基于SSM框架的動物醫(yī)療平臺設計與實現(xiàn)計算機專業(yè)_第1頁
基于SSM框架的動物醫(yī)療平臺設計與實現(xiàn)計算機專業(yè)_第2頁
基于SSM框架的動物醫(yī)療平臺設計與實現(xiàn)計算機專業(yè)_第3頁
基于SSM框架的動物醫(yī)療平臺設計與實現(xiàn)計算機專業(yè)_第4頁
基于SSM框架的動物醫(yī)療平臺設計與實現(xiàn)計算機專業(yè)_第5頁
已閱讀5頁,還剩35頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、目 錄摘 要IAbstractII引 言11 相關技術31.1 Ajax31.2 MVC設計模式31.3 BootStrap31.4 SSM框架41.5 本章小結42 系統(tǒng)分析52.1 需求分析52.1.1 用戶需求分析52.1.2 醫(yī)生需求分析62.1.3 管理員需求分析72.2 用例分析82.3 非功能需求102.4 本章小結103 系統(tǒng)設計113.1 系統(tǒng)總體設計113.1.1 體系結構設計113.1.2 功能結構設計123.2 系統(tǒng)詳細設計153.3 本章小結224 系統(tǒng)實現(xiàn)234.1 開發(fā)環(huán)境234.2 系統(tǒng)設計實現(xiàn)234.2.1 數(shù)據庫實現(xiàn)234.2.2 設計實現(xiàn)244.3 本章小

2、結285 系統(tǒng)測試295.1 測試計劃295.2 測試結果295.2.1 單元測試295.2.2 壓力測試305.3 本章小結32結 論33致 謝34參考文獻35摘 要 隨著我國社會經濟的發(fā)展,城市化進程的加快,飼養(yǎng)寵物開始受到越來越多居民的喜愛,直接加快了寵物醫(yī)療行業(yè)的發(fā)展。由此帶來的寵物醫(yī)療問題也日益增多。在這種情況下,傳統(tǒng)的寵物醫(yī)療服務已經無法滿足市場的客觀需求。針對現(xiàn)在寵物市場的現(xiàn)狀和醫(yī)療服務的問題,本文開發(fā)了基于SSM框架的動物醫(yī)療平臺。通過對動物醫(yī)療平臺業(yè)務流程的調研,并且充分考慮到未來行業(yè)的發(fā)展趨勢,本文運用SSM框架技術,系統(tǒng)框架采用B/S體系架構,后臺數(shù)據庫采用MySQL數(shù)據

3、庫,應用服務器采用idea開發(fā)實現(xiàn)了動物醫(yī)療平臺。所設計開發(fā)的動物醫(yī)療平臺包含管理員,用戶,醫(yī)生等三大模塊。本平臺的突出之處在于,平臺提供全國各地的寵物醫(yī)院和寵物醫(yī)生,用戶可以通過此平臺進行預訂。通過使用本文平臺進行預訂動物醫(yī)療服務,可大大提高業(yè)務的操作性和實用性。它具有操作方便、簡單等優(yōu)點,大大降低了運營成本,提高了寵物醫(yī)療市場的透明度。本平臺采用SSM框架技術,平臺具有可操作性、便捷性和易用性的特點。該技術使平臺具有良好的跨平臺性和較強的可擴展性。經過具體的編碼和系統(tǒng)測試,動物醫(yī)療平臺的所有模塊都已成功實現(xiàn)并投入使用。實際應用表明,本文設計的B/S系統(tǒng)總體運行穩(wěn)定,能夠滿足動物醫(yī)療方面的需

4、要。關鍵詞:SSM框架; B/S架構; 動物醫(yī)療平臺; 市場的透明度 AbstractWith the development of Chinas social economy and the acceleration of urbanization, more and more residents begin to keep pets, which directly accelerates the development of the pet medical industry. Medical problems for pets are also on the rise. In this c

5、ase, traditional pet medical services have been unable to meet the objective needs of the market. Aiming at the current situation of the pet market and the problems of medical services, this paper develops an animal medical platform based on SSM framework.Based on the investigation of the business p

6、rocess of animal medical platform, and fully considering the development trend of the industry in the future, this paper adopts SSM framework technology, B/S system architecture is adopted as the system framework, MySQL database is adopted as the background database, and idea is adopted as the appli

7、cation server to develop and realize the animal medical platform. The animal medical platform includes three modules: administrator, user and doctor. What stands out about this platform is that it provides pet hospitals and pet doctors all over the country, and users can book through this platform.

8、Through the use of this platform to book animal medical services, can greatly improve the operational and practical business. It has the advantages of easy operation and simplicity, greatly reducing the operating cost and improving the transparency of the pet medical market.This platform adopts SSM

9、framework technology, which is characterized by operability, convenience and ease of use. This technology makes the system have good cross-platform and strong expansibility. After specific coding and system testing, all the modules of the animal medical system have been successfully implemented and

10、put into use. The practical application shows that the B/S system designed in this paper runs stably on the whole and can meet the needs of animal medical treatment.Keywords: SSM framework; B/S architecture; Animal medical system; Market transparency引 言從古至今,人類與動物以及大自然都是相輔相成的。動物是人類生存環(huán)境的一個組成部分,是維持人類生存

11、的基礎。離開了動物人類不能生存。隨著我國社會經濟的發(fā)展,城市化進程不斷加速。城市生活的封閉性、個性化和人口老齡化等問題不斷凸顯出來。飼養(yǎng)寵物成為了廣大居民生活的一部分,寵物產業(yè)的發(fā)展速度越來越快1。隨之而來,各種寵物診療機構如雨后春筍般因運而生。由此帶來的寵物醫(yī)療問題也日益增多。面對如今寵物市場供不應求的現(xiàn)狀以及醫(yī)療服務諸多問題,所以打造一個寵物醫(yī)療平臺具有較好的應用前景。在國內,寵物醫(yī)療行業(yè)的發(fā)展正處在非?;馃岬臓顟B(tài)。但該行業(yè)的線下服務存在著很多的問題。一方面由于信息的不透明,導致養(yǎng)寵人士看病不方便,因為國內寵物醫(yī)院90% 都是中小個體寵物診所,線下寵物醫(yī)院的收費普遍較貴,存在亂收費的現(xiàn)象。

12、許多寵物醫(yī)院掛號和藥品銷售價格都是醫(yī)生定價,沒有明碼標價,許多項目醫(yī)療費用都極其昂貴。此外,寵物醫(yī)院銷售的寵物用品和藥品的價格也遠高于寵物店銷售的用品、藥品等。另一方面是優(yōu)秀的寵物醫(yī)生和寵物醫(yī)院缺乏高效的宣傳推廣渠道,雖然擁有較好的醫(yī)術和業(yè)績,但卻有很少的養(yǎng)寵人士知道這樣的信息。國外的寵物醫(yī)院制度較為成熟。和國內不同的是國外的寵物醫(yī)院大致分為兩大部分,一部分是醫(yī)療,另一部分是負責給寵物美容、訓練和寄養(yǎng)。它們擁有比國內更高超的醫(yī)療技術,醫(yī)生和醫(yī)院都很專業(yè)。但是在進行醫(yī)療和護理時,會需要一些貴重的醫(yī)療器械。這樣以來,給寵物看病的價錢也就上漲了不少。對于普通家庭的人士來說,昂貴的醫(yī)療費顯然是無法承擔

13、的。所以在國外,還需要通過降低醫(yī)療成本來解決寵物看病難的問題2。通過國內外的調研情況來看,不管是在國內還是國外,寵物醫(yī)療行業(yè)都還存在著大大小小的問題。隨著互聯(lián)網時代的到來,線上服務也越來越流行。在這種情況下,動物醫(yī)療平臺的發(fā)行必定會受到國內外養(yǎng)寵人士的喜愛。通過該平臺寵物醫(yī)生可以推廣自己和自己的醫(yī)院,使信息變得透明化。用戶通過平臺可以了解到醫(yī)生和醫(yī)院的信息,并且可以提前預訂醫(yī)生??梢酝昝澜鉀Q寵物醫(yī)療行業(yè)現(xiàn)有的問題。因此該平臺的發(fā)行必定引起一波熱潮。本文的主要內容是對動物醫(yī)療平臺進行詮釋,并從相關技術、系統(tǒng)分析、系統(tǒng)設計、系統(tǒng)實現(xiàn)、系統(tǒng)測試等方面對動物醫(yī)療平臺的設計進行全面展示。本系統(tǒng)主要有三個

14、模塊的功能。它們分別是用戶模塊、動物醫(yī)生模塊和管理員模塊3。本文第1章主要介紹動物醫(yī)療平臺設計中的MVC主體設計模式,采用的SSM框架,連接的MySQL數(shù)據庫以及Tomcat應用服務器。第2章主要介紹動物醫(yī)療平臺的需求分析,包括動物醫(yī)療平臺功能需求分析、動物醫(yī)療平臺的用例分析和動物醫(yī)療平臺的非功能需求分析。第3章主要介紹動物醫(yī)療平臺的系統(tǒng)設計,包括動物醫(yī)療平臺的總體設計和詳細設計。動物醫(yī)療平臺的設計以系統(tǒng)的數(shù)據流圖、平臺的功能結構圖、平臺的E-R圖、表的關系視圖和核心功能描述為中心進行描述。第4章主要介紹動物醫(yī)療平臺的開發(fā)環(huán)境以及功能模塊的實現(xiàn)。包括軟件環(huán)境和硬件環(huán)境、平臺功能實現(xiàn)效果截圖和實

15、現(xiàn)功能的核心代碼。第5章主要介紹動物醫(yī)療平臺測試所使用的測試工具,測試過程和測試結果,測試過程主要對平臺功能進行單元測試和壓力測試。1 相關技術動物醫(yī)療平臺使用idea作為開發(fā)工具。該平臺的后端模塊使用的是SSM框架技術,前端模塊使用Bootstrap和Ajax技術。服務器選用的是目前最新版本的Tomcat 9.0,數(shù)據庫使用的是一個小型的輕量級數(shù)據庫MySQL數(shù)據庫。動物醫(yī)療平臺采用的設計模式是MVC設計模式4。1.1 AjaxAjax是一種異步刷新頁面并且基于JavaScript和XML的技術。它結合了很多種的傳統(tǒng)技術,是一種使用現(xiàn)有標準的新方法。該技術最大的優(yōu)點是與服務器交換數(shù)據時,在不

16、重新加載整個頁面的情況下可以更新局部頁面的內容。該技術的原理就是在客戶端和服務器之間假設出了一個Ajax層5,用戶發(fā)送指令之后,對服務器端和網頁端進行分批次調動,從而提升了網頁的響應速度6。XmlHttpRequest是Ajax的核心,它保證了服務器和客戶端的緩存數(shù)據交換的能力,服務器返回數(shù)據后用戶無需頻繁刷新整個網頁,就能夠更新網頁的局部。1.2 MVC設計模式MVC是一種設計模式,是Model、View和Controller的縮寫。其中Model層是一個抽象的對象模型7,該層主要負責代碼的業(yè)務邏輯,里面不僅封裝了數(shù)據也封裝了對數(shù)據的操作,是實際進行數(shù)據處理的地方,也可以叫做業(yè)務邏輯層。Vi

17、ew層是負責將應用渲染并顯示給用戶,也就是常說的前端頁面,系統(tǒng)里主要通過JSP層來體現(xiàn)。Controller層是控制器,主要負責視圖和模型之間的交互8,也就是web中的Servlet層,SpringMVC框架將該層的控制器替換成Controller控制器,主要負責兩方面的工作,第一個方面就是接收用戶的請求,并將該請求分發(fā)到相應的模型上,第二個方面是將后臺處理過得數(shù)據再及時地反映到前端視圖上。該平臺為什么要選擇MVC設計模式?因為它具有以下獨特的優(yōu)點:該設計模式大大降低了程序代碼的耦合性,提高了代碼重用,并且這種設計模式簡化了開發(fā)和維護用戶接口的技術含量,有效的縮短了整個系統(tǒng)的開發(fā)時間。該設計模

18、式可以使平臺更容易維護和修改,提高了系統(tǒng)的可維護性9。1.3 BootStrapBootStrap 框架是目前非常受歡迎的前端開發(fā)框架,它使頁面顯得直觀、簡潔,功能十分的強悍。它主要包含 HTML、CSS 和 JS的 基礎框架,具有優(yōu)秀的響應式布局,可以兼容現(xiàn)代所有的瀏覽器,無論在臺式機、平板設備還是手機上都可以獲得最佳的體驗10。使用該框架可以加快項目的開發(fā)速度,提升系統(tǒng)開發(fā)的效率。該框架提供了一套響應式的柵格系統(tǒng)。不管用戶如何調整頁面的尺寸,該框架都可以將頁面按照合適的尺寸展現(xiàn)出來。1.4 SSM框架SSM框架是Spring,SpringMVC和MyBatis三個技術的簡稱,里面封裝了已經

19、寫好的規(guī)則和代碼,幫助開發(fā)人員實現(xiàn)了很多的基礎功能。其中MyBatis是一個支持高級映射的持久層框架。傳統(tǒng)的SQL語句寫在數(shù)據訪問層,不利于統(tǒng)一管理和優(yōu)化。MyBatis框架通過在XML文件中編寫SQL語句,解除了SQL語句和程序代碼之間的耦合。在進行查詢,添加,刪除,修改操作時,有很多冗余的SQL語句冗余,該框架提供了xml標簽,支持編寫動態(tài)SQL,極大方便了開發(fā)工作11。Spring是apche開發(fā)的一種輕型開源框架,它沒有替代某個層,而是對所有的層都進行管理。該框架有兩個核心分別是IOC和AOP。其中IOC將類放到工廠里面進行管理,開發(fā)時變得方便解耦,大大簡化了開發(fā)工作12。AOP是Sp

20、ring的另一個核心,是為類提供動態(tài)代理類,當相應的類加上動態(tài)代理類之后,很容易實現(xiàn)事務,日志和權限的控制。SpringMVC使用了MVC設計思想的輕量級框架,它擁有單例的controller控制器,可以對web層解耦合,它還可以與Spring框架無縫集成,使開發(fā)變的簡單,易操作13。1.5 本章小結本章主要介紹了動物醫(yī)療平臺開發(fā)中涉及到的關鍵技術,說明開發(fā)用到的環(huán)境,包括idea開發(fā)工具、MySQL數(shù)據庫、Tomcat服務器。詳細介紹了開發(fā)用到的相關技術,包括MVC設計模式、Bootstrap前端框架、Ajax技術以及SSM框架技術。2 系統(tǒng)分析本章從功能需求,用例分析,非功能需求三個方面來

21、介紹該動物醫(yī)療平臺的需求分析和系統(tǒng)設計思路。通過社會調研,國內外現(xiàn)狀分析平臺的應有的功能需求,通過用例圖說明該平臺角色應有的用例,并通過文字說明詳細介紹了平臺的非功能需求。2.1 需求分析 在以前,寵物的價值還沒有提升,大多數(shù)養(yǎng)寵人士都沒有去醫(yī)院給寵物看病的習慣。如果家里或者朋友有懂醫(yī)術的,就隨便應付一下14。如果沒有,最多也就是去附近的獸醫(yī)店就醫(yī)。隨著社會生活水平的提高,越來越多的人開始有了寵物寄養(yǎng),寵物醫(yī)療,寵物美容一系列的消費需求15。因此根據現(xiàn)在的社會趨勢,對動物醫(yī)療平臺的發(fā)展來說,是個很好的機會。通過調研國內和國外的現(xiàn)狀,都沒有一個比較成熟的平臺供用戶使用。在國內,根據數(shù)據統(tǒng)計,未來

22、的幾年里,養(yǎng)寵人數(shù)必定呈劇增的趨勢16。隨著互聯(lián)網時代的來臨,各種行業(yè)開始通過網上平臺進行服務。但是目前還沒有以動物醫(yī)療為主題的平臺17。在國外,雖然互聯(lián)網的發(fā)展比國內發(fā)達,在市場上的動物醫(yī)療平臺也出現(xiàn)了不少,但是國外的平臺沒有涉及到醫(yī)療知識和動物商品等方面。面對現(xiàn)在的市場需求,現(xiàn)有平臺的內容顯得不夠豐富,模塊不夠全面,功能不夠健全??傊疀]有一個很成熟的平臺18。為了解決動物醫(yī)療行業(yè)現(xiàn)存在的問題,推動動物醫(yī)療行業(yè)的發(fā)展,為了滿足現(xiàn)在用戶所必需的服務要求,使該平臺的發(fā)行能夠贏得更多用戶的信賴和支持19。因此該平臺設計分為三個角色,分別是用戶角色,醫(yī)生角色,管理員角色。根據分析每個角色都應該具有不

23、同的權限和功能。用戶具有了22個功能需求,醫(yī)生具有13個功能需求,管理員具有16個功能需求。下面分別對三個角色的功能需求進行詳細的介紹。2.1.1 用戶需求分析(1) 用戶登錄:用戶名、密碼;(2) 用戶退出登錄;(3) 修改用戶密碼:用戶名、原密碼、新密碼、確認密碼;(4) 注冊、修改用戶信息:用戶姓名、用戶性別、用戶手機號碼、用戶電子郵箱、用戶微信號碼、用戶密碼、確認密碼、用戶所在城市;(5) 查看動物醫(yī)院信息:醫(yī)院名稱,醫(yī)院照片;(6) 查看動物醫(yī)院詳細信息:動物醫(yī)院名稱,動物醫(yī)院簡介,動物醫(yī)院電話,動物醫(yī)院郵箱,動物醫(yī)院所在地;(7) 查詢指定地區(qū)的動物醫(yī)院;(8) 查看動物醫(yī)生信息:

24、動物醫(yī)生姓名、動物醫(yī)生的預訂數(shù)量、預約價格、醫(yī)生照片;(9) 查看動物醫(yī)生詳細信息:店家名稱、預約價格、動物醫(yī)生所在醫(yī)院、動物醫(yī)生工作經歷;(10) 預約動物醫(yī)生服務:在醫(yī)生照片點擊立即預約進入到該醫(yī)生的預約界面,在此界面中填寫預約動物姓名、動物年齡、動物所屬品種、預約時間之后可進行預訂;(11) 查看預約動物醫(yī)生訂單信息列表;(12) 查看平臺最新公告信息;(13) 查看平臺醫(yī)療小知識信息;(14) 查看平臺關于我們信息;(15) 提交反饋:為管理員添加反饋信息;(16) 查看動物食品信息:商品名稱,商品照片,商品價格;(17) 查看動物食品詳細信息:動物食品名稱,動物食品照片,動物食品價格

25、,動物食品簡介,動物食品質量,動物食品生產日期,動物食品保質期,動物食品銷量;(18) 查看動物食品評價信息:評價人姓名,評價時間,評價信息;(19) 添加動物食品評價;(20) 添加購物車:食品名稱,商品數(shù)量,商品價格,商品總價;(21) 生成訂單:食品序號,商品名稱,商品單價,商品數(shù)量,商品小計,商品總價;(22) 選擇、添加食品發(fā)貨地址;2.1.2 醫(yī)生需求分析(1) 醫(yī)生登錄:醫(yī)生姓名,醫(yī)生密碼;(2) 注冊、修改醫(yī)生信息:醫(yī)生姓名,上傳醫(yī)生照片,手機號碼,電子郵箱,醫(yī)生密碼,確認醫(yī)生密碼,醫(yī)生預訂價格,預訂市場價格,醫(yī)生所在城市,醫(yī)生姓名,醫(yī)生所屬醫(yī)院,醫(yī)生簡介;(3) 醫(yī)院注冊:醫(yī)

26、院名稱,上傳醫(yī)院照片,醫(yī)院電話,醫(yī)院電子郵箱,醫(yī)院地址,醫(yī)院詳細信息;(4) 查看用戶訂單:用戶名,用戶電話,用戶微信,所在城市,下單時間,查看詳情,訂單狀態(tài);(5) 修改用戶訂單狀態(tài);(6) 查看用戶訂單詳細:動物名,動物年齡,動物品種,預約時間; (7) 查看醫(yī)生詳細信息,查看醫(yī)院詳細信息;(8) 添加反饋,為管理員添加反饋信息;(9) 查看平臺關于我們信息;(10) 查看平臺醫(yī)療小知識信息;(11) 查看平臺公告信息;(12) 醫(yī)生退出登錄;2.1.3 管理員需求分析(1) 管理員登錄:后臺管理員姓名,密碼;(2) 管理員退出登錄;(3) 用戶管理:用戶信息展示,用戶狀態(tài)的修改(激活和凍

27、結);(4) 動物統(tǒng)計圖:查看用戶注冊貓類,犬類數(shù)量的柱狀統(tǒng)計圖;(5) 食品和類別管理:動物食品和類別的添加,刪除,修改,展示;(6) 食品訂單管理:用戶訂單信息的展示,指定訂單的訂單項信息;(7) 醫(yī)生管理:醫(yī)生信息展示,醫(yī)生狀態(tài)的修改(激活和凍結);(8) 醫(yī)院管理:醫(yī)院信息展示;(9) 動物科室管理:動物科室信息的添加,刪除,修改,展示;(10) 反饋管理:用戶反饋信息展示;(11) 關于我們管理:關于我們信息展示,添加,刪除,修改;(12) 日志管理:管理員操作日志信息展示;(13) 用戶醫(yī)生登錄日志管理:用戶醫(yī)生登錄日志信息展示;(14) 修改密碼日志管理:用戶與醫(yī)生修改密碼日志信

28、息展示;(15) 公告管理:動物醫(yī)療平臺公告的添加,修改,刪除,展示;(16) 醫(yī)療知識管理:醫(yī)療知識的添加,修改,刪除,展示;2.2 用例分析動物醫(yī)療平臺的第一個功能是用戶功能,根據動物醫(yī)療平臺的用戶用例圖可以看出有用戶為參與者,該參與者擁有10個用例,包括:登錄,修改密碼,注冊,預約服務信息,公告信息,醫(yī)療知識信息,關于我們信息,反饋信息,購買寵物食品,修改賬戶信息。詳情可見“動物醫(yī)療平臺”的用例圖如圖2.1。圖2.1 “動物醫(yī)療平臺”的用例圖動物醫(yī)療平臺的第二個功能是醫(yī)生功能,根據動物醫(yī)療平臺的醫(yī)生用例圖可以看出有醫(yī)生為參與者,9個用例,包括:登錄,修改密碼,注冊,修改賬戶信息,用戶訂單

29、信息,反饋信息,公告信息,醫(yī)療知識信息,關于我們信息。詳情可見“動物醫(yī)療平臺”的用例圖如圖2.2。圖2.2 “動物醫(yī)療平臺”的用例圖動物醫(yī)療平臺的第三個功能是管理員功能,根據管理員用例圖可以看出管理員為參與者,擁有10個用例,包括:登錄,操作用戶信息,操作食品信息,操作醫(yī)生信息,操作醫(yī)院信息,查看反饋信息,操作關于我們信息,查看日志信息,操作公告信息,操作醫(yī)療知識信息。詳情可見“動物醫(yī)療平臺”的用例圖如圖2.3。圖2.3 “動物醫(yī)療平臺”的用例圖動物醫(yī)療平臺的數(shù)據流圖,說明了該平臺的請求走向,其中用戶對動物醫(yī)療平臺的請求訪問,醫(yī)生對動物醫(yī)療平臺的請求訪問和管理員對動物醫(yī)療平臺的請求訪問。 “動

30、物醫(yī)療平臺”系統(tǒng)的數(shù)據流圖如圖2.4。圖2.4 “動物醫(yī)療平臺”的數(shù)據流圖2.3 非功能需求以上功能需求指的是動物醫(yī)療平臺中需要具備的功能,除了這些功能需求之外,還需滿足一些非功能性的需求分析。前端界面需求是為了給用戶更好的體驗,需要對界面的控件進行規(guī)范,對控件的使用范圍進行一個限制。比如:確認按鈕設計在右邊,取消按鈕設計在左邊,用戶在進行刪除操作時,需要有刪除提示。性能需求包括平臺的響應時間和吞吐量、用戶數(shù)量等幾個方面,需要對平臺進行壓力測試,以此來對這些方面進行監(jiān)控20。2.4 本章小結本章主要介紹了動物醫(yī)療平臺的需求分析和用例分析,通過國內外調研進行三個角色的需求分析,包括用戶需求用例分

31、析、醫(yī)生用例需求分析和管理員用例需求分析。除此之外,還對平臺進行了非功能需求的分析。3 系統(tǒng)設計3.1 系統(tǒng)總體設計3.1.1 體系結構設計系統(tǒng)的主體設計思想是MVC設計模式,分別是model層,view層,controller層,model層也叫做數(shù)據層,該層負責處理數(shù)據。view層也叫做視圖層,負責處理圖像,將圖像返回給用戶。controller層也叫做控制層,負責接收前臺數(shù)據和返回后臺數(shù)據。動物醫(yī)療平臺體系結構如圖3.1。圖3.1 “動物醫(yī)療平臺”系統(tǒng)的體系結構圖3.2 “動物醫(yī)療平臺”的模型從需求中可以得出系統(tǒng)的關鍵抽象包括:登錄、用戶、醫(yī)生、管理員、預約服務、商城服務、醫(yī)療知識服務。

32、用戶、醫(yī)生和管理員可以統(tǒng)稱為對象。每個對象擁有一個登錄,每個登錄對應一個對象;一個對象可以操作一個平臺,平臺可以被多個對象操作;一個平臺有多個服務,一個服務在一個平臺只能有一個。動物醫(yī)療平臺軟件結構如圖3.2,該圖描述了系統(tǒng)的模型。動物醫(yī)療平臺軟件結構是:JSP層顯示視圖,將數(shù)據傳給controller層,controller層接受到數(shù)據,將數(shù)據傳給service層,service層處理業(yè)務邏輯,通過調用dao層來獲取數(shù)據庫中的數(shù)據。dao層獲取到指定數(shù)據之后,會將數(shù)據返回給service層,service層再返回給controller層,controller最后再返回給JSP層,這時獲取的數(shù)

33、據會在視圖上顯示出來。動物醫(yī)療平臺軟件結構如圖3.3。圖3.3 “動物醫(yī)療平臺”的軟件結構圖3.1.2 功能結構設計動物醫(yī)療平臺共有三個主要角色,分別是用戶角色,醫(yī)生角色和管理員角色,用戶角色功能包括登錄,修改密碼,注冊,預約服務信息,公告信息,醫(yī)療知識信息,關于我們信息,反饋信息,購買寵物食品,修改賬戶信息。醫(yī)生角色功能包括登錄,注冊,修改賬戶信息,用戶訂單信息,反饋信息,公告信息,醫(yī)療知識信息,關于我們信息。管理員角色功能包括登錄,用戶信息,食品信息,醫(yī)生信息,醫(yī)院信息,反饋信息,關于我們信息,日志信息,公告信息,醫(yī)療知識信息?!皠游镝t(yī)療平臺”的功能結構如圖3.4。圖3.4 “動物醫(yī)療平臺

34、”的功能結構圖動物醫(yī)療平臺的用戶功能包括:登錄,修改密碼,注冊,查看寵物醫(yī)院信息,查看寵物醫(yī)生信息,預約醫(yī)生,查看預約訂單信息,查看公告信息,查看醫(yī)療知識信息,查看關于我們信息,提交反饋,查看寵物食品信息,添加購物車,生成訂單,添加訂單地址,添加寵物食品評價,修改用戶賬戶信息, “動物醫(yī)療平臺”的用戶結構如圖3.5。圖3.5 “動物醫(yī)療平臺”的用戶結構圖動物醫(yī)療平臺的醫(yī)生功能包括:醫(yī)生登錄,醫(yī)生注冊,修改醫(yī)生賬戶信息,查看用戶訂單信息,查看用戶訂單詳細,接單服務,提交反饋,查看公告信息,查看醫(yī)療知識信息,查看關于我們信息。 “動物醫(yī)療平臺”的醫(yī)生結構如圖3.6。圖3.6 “動物醫(yī)療平臺”的醫(yī)生

35、結構圖動物醫(yī)療平臺的管理員功能包括:登錄,操作用戶信息,操作食品信息,操作食品分類信息,操作醫(yī)生信息,操作醫(yī)院信息,查看反饋信息,操作關于我們信息,查看登錄日志信息,查看管理員操作日志信息,查看修改密碼日志信息,操作公告信息,操作醫(yī)療知識信息。 “動物醫(yī)療平臺”的管理員結構如圖3.7。圖3.7 “動物醫(yī)療平臺”的管理員結構圖3.2 系統(tǒng)詳細設計圖3.8 “動物醫(yī)療平臺”的E-R圖該動物醫(yī)療平臺共有20個數(shù)據庫表,通過PowerDesigner工具畫E-R圖描述了庫表關系。表與表之間共有15個關系,其中有13個一對多關系,有2個多對多關系。動物醫(yī)療平臺的E-R圖如圖3.821。3.2.1 表設計

36、表3.1 “動物醫(yī)療平臺”的總表名表名功能說明user用戶表reservation預訂表password_log密碼日志表notice公告表manual醫(yī)療知識表login_log登錄日志表hospital醫(yī)院表food_order食品訂單表food_item訂單項表 food_category食品類別表food_address發(fā)貨地址表food食品表feedback反饋表department科室表doctor醫(yī)生表comment評論表animal動物表admin_log管理員日志表admin管理員表about關于我們表動物醫(yī)療平臺共20個數(shù)據庫表,詳情可見表3.1動物醫(yī)療平臺總表名。該表詳細

37、介紹了平臺所用所有庫表的表名以及相應的功能描述。下面通過數(shù)據庫表的字段,數(shù)據類型數(shù)據長度,約束條件等字段對一些核心數(shù)據庫表進行詳細的分析。動物醫(yī)療平臺用戶表共有11個字段分別是用戶ID、用戶名、用戶電話、賬號狀態(tài)、郵箱、性別、用戶微信、鹽密、鹽、所在城市、用戶注冊日期,其中將用戶ID設為該表的主鍵。詳情可見動物醫(yī)療用戶表3.2。表3.2 “動物醫(yī)療平臺”的用戶表user列名數(shù)據類型長度(小數(shù))約束條件其它說明Idvarchar40(0)PRIMARY KEY用戶IDloginnamevarchar40(0)用戶名phonevarchar40(0)用戶電話statusint1(0)賬號狀態(tài)wec

38、hatvarchar20(0)用戶微信create_datetimestamp0注冊日期sexvarchar10(0)性別cityvarchar10(0)城市saltvarchar40(0)鹽salt_keyvarchar40(0)鹽密emailvarchar40(0)郵箱動物醫(yī)療平臺醫(yī)生表有14個字段分別是醫(yī)生ID、醫(yī)生姓名、醫(yī)生照片、鹽、鹽密、狀態(tài)、醫(yī)生簡介、預訂數(shù)量、性別、所在城市、手機號碼、預約價格、預約原價。其中將醫(yī)生ID設為該表的主鍵,醫(yī)院ID設為該表的外鍵,通過該字段與醫(yī)院表建立相應的關系。詳情可見動物醫(yī)療平臺醫(yī)生表3.3。表3.3“動物醫(yī)療平臺”的醫(yī)生表doctor列名數(shù)據類型

39、長度(小數(shù))約束條件其它說明Idvarchar40(0)PRIMARY KEY醫(yī)生IDdoctor_namevarchar40(0)醫(yī)生姓名doctor_imgvarchar100(0)醫(yī)生照片saltvarchar40(0)鹽salt_keyvarchar40(0)鹽密statusint1(0)賬號狀態(tài)birefvarchar500(0)醫(yī)生簡介book_countint10(0)預約數(shù)量sexvarchar10(0)醫(yī)生性別cityvarchar10(0)所在城市phonevarchar40(0)手機號碼npricedouble10(2)預約價格opricedouble10(2)預約原價h

40、ospital_idvarchar40(0)FOREIGN KEY醫(yī)院ID動物醫(yī)療平臺預訂表有6個字段分別是預約ID、預約狀態(tài)、預約時間、用戶ID、醫(yī)生ID、動物ID。其中將預約ID設為該表的主鍵,將用戶ID、醫(yī)生ID、動物ID設為外鍵。通過該字段與用戶表、醫(yī)生表、動物表建立相應的關系。詳情可見動物醫(yī)療平臺預約表3.4。表3.4 “動物醫(yī)療平臺”的預訂表reservation列名數(shù)據類型長度(小數(shù))約束條件其它說明Idvarchar40(0)PRIMARY KEY預約IDbook_statusint10(0)預約狀態(tài)book_timetimestamp0預約時間user_idvarchar40

41、(0)FOREIGN KEY用戶IDdoctor_idvarchar40(0)FOREIGN KEY醫(yī)生IDanimal_idvarchar40(0)FOREIGN KEY動物ID動物醫(yī)療平臺食品表有11個字段分別是食品ID,食品名,食品圖片,食品介紹,原價格,新價格,重量,銷量,保質期,生產日期,類別ID。其中將食品ID設為該表的主鍵,將類別ID設為外鍵。通過該字段與類別表建立相應的關系。詳情可見動物醫(yī)療平臺食品表3.5。表3.5 “動物醫(yī)療平臺”系統(tǒng)的食品表food列名數(shù)據類型長度(小數(shù))約束條件其它說明Idvarchar40(0)PRIMARY KEY食品IDfood_namevarch

42、ar40(0)食品名food_imgvarchar500(0)食品圖片introductionvarchar500(0)食品介紹old_pricedouble10(2)原價格new_pricedouble10(2)新價格weightdouble10(2)重量salt_countint20(0)銷量quality_timecreate_datecate_idtimestamptimestampvarchar0(0)0(0)40(0)FOREIGN KEY保質期生產日期類別ID動物醫(yī)療平臺訂單表有8個字段分別是訂單ID,訂單編號名,訂單時間,發(fā)貨人姓名,發(fā)貨地址,總價,地址ID,用戶ID。其中將食

43、品訂單ID設為該表的主鍵,將地址ID和用戶ID設為該表外鍵。通過該字段與地址表、用戶表建立相應的關系。詳情可見動物醫(yī)療平臺食品表3.6。表3.6 “動物醫(yī)療平臺”系統(tǒng)的用戶表food_order列名數(shù)據類型長度(小數(shù))約束條件其它說明Idvarchar40(0)PRIMARY KEY食品訂單IDorder_numbervarchar40(0)訂單編號名order_timestimestamp0(0)生成時間addr_uservarchar40(0)發(fā)貨人姓名addr_namevarchar40(0)發(fā)貨地址total_pricedouble10(2)總價addr_idvarchar40(0)F

44、OREIGN KEY地址IDuser_idvarchar40(0)FOREIGN KEY用戶ID3.2.2 系統(tǒng)功能設計下面將會介紹平臺的4個核心功能的設計。分別是用戶預約醫(yī)生功能,醫(yī)生接單功能,管理員查看用戶反饋功能,用戶修改密碼日志功能。首先介紹功能的時序圖,然后描述功能的運行流程,最后通過列表形式介紹實現(xiàn)該功能使用到的類以及使用的原因。(1) 用戶預約醫(yī)生功能該動物醫(yī)療平臺設計的初衷就是為了方便養(yǎng)寵人士到動物醫(yī)院給寵物看病。用戶預約醫(yī)生功能可以實現(xiàn)用戶在線上預約動物醫(yī)生,成功解決了線下看病難,看病麻煩,看病不方便以及不快捷等問題。通過該功能的實現(xiàn),用戶可以提前在該平臺進行預約,不用再為到

45、動物醫(yī)院排隊掛號的問題而擔憂。因此該功能是本平臺所必需的,也是最核心的一個功能。預約醫(yī)生時序圖如圖3.9。圖3.9 “動物醫(yī)療平臺”的預約醫(yī)生時序圖預約醫(yī)生是平臺的核心功能之一。首先用戶可以在book-doctor-list.jsp頁面看到醫(yī)生的詳細信息,可以在該頁面進行預訂,輸入必填的預約信息之后,該界面會將數(shù)據傳給ReservationController頁面,進行數(shù)據的驗證之后,將數(shù)據傳給ReservationServiceImpl層,該層負責處理功能的業(yè)務,通過調用dao層來獲取數(shù)據庫中的數(shù)據。最后將逐層返回到book-doctor-list.jsp界面,將最后的視圖顯示給用戶。詳情可

46、見表“動物醫(yī)療平臺”的預約醫(yī)生表3.7。表3.7 “動物醫(yī)療平臺”的預約醫(yī)生表編號類名或方法名功能描述 1book-doctor-list.jsp顯示醫(yī)生預訂界面,輸入預約信息之后,以POST請求方式提交給ReservationController。 2ReservationController判斷用戶是否登錄,沒有登錄跳轉到登錄界面,如果登錄將數(shù)據傳給ReservationServiceImpl。 3ReservationServiceReservationServiceImpl的接口。 4ReservationServiceImpl處理預訂醫(yī)生業(yè)務,調用Dao層的方法并將數(shù)據傳給Dao層

47、5ReservationDaoReservationDaoMapper.xml的接口。 6ReservationDaoMapper.xml存放sql語句,通過sql語句獲取數(shù)據庫中的數(shù)據,之后逐層返回到jsp頁面顯示。(2) 醫(yī)生接單功能用戶在預訂寵物醫(yī)生之后,該寵物醫(yī)生會接受到預訂用戶的相關信息,包括用戶的姓名,預約時間,寵物的品種等等。獲取到這些信息之后,寵物醫(yī)生才方便進行用戶到店之前的準備工作。醫(yī)生接單時序圖如圖3.10。圖3.10 “動物醫(yī)療平臺”的醫(yī)生接單時序圖醫(yī)生接單功能是平臺的核心功能之一,用戶預訂醫(yī)生之后,用戶有必要知道自己的訂單信息。醫(yī)生接單功能,首先doctor-books

48、.jsp獲取到修改訂單狀態(tài)的數(shù)據,將該數(shù)據通過get方式提交給ReservationController,進行信息的驗證。接著通過調用ReservationServiceImpl層的方法,處理修改訂單狀態(tài)的業(yè)務邏輯,在該層將數(shù)據傳給Dao層,通過Dao層連接數(shù)據庫,修改數(shù)據庫中的數(shù)據,最后逐層返回給doctor-books.jsp頁面進行顯示。詳情可見表“動物醫(yī)療平臺”的查看醫(yī)生接單表3.8。表3.8 “動物醫(yī)療平臺”的醫(yī)生接單表編號類名或方法名功能描述 1doctor-books.jsp顯示用戶預訂單界面,可以查看已預訂的所有用戶信息,以get請求方式提交給ReservationContro

49、ller。 2ReservationController獲取到數(shù)據,將數(shù)據傳給ReservationServiceImpl。 3ReservationServiceReservationServiceImpl的接口。 4ReservationServiceImpl處理修改用戶預訂單狀態(tài)業(yè)務,調用Dao層的方法并將數(shù)據傳給Dao層 5ReservationDaoReservationDaoMapper.xml的接口。 6ReservationDaoMapper.xml存放sql語句,通過sql語句獲取數(shù)據庫中的數(shù)據,之后逐層返回到doctor-books.jsp頁面顯示。(3) 管理員查看用戶反

50、饋信息功能用戶在使用平臺的時候,網頁卡頓、服務器崩潰等問題在所難免。因此需要提交反饋功能。用戶在前臺提交反饋信息給管理員之后,管理員需要獲取到用戶的反饋信息,才可進一步對平臺進行完善。查看用戶反饋信息時序圖如圖3.11。圖3.11 “動物醫(yī)療平臺”的查看反饋信息時序圖管理員查看用戶反饋信息功能,是查看前臺用戶所提交的反饋信息。首先在feedback.jsp頁面,通過ajax技術獲取FeedbackController所傳遞的數(shù)據,在FeedbackController對信息進行驗證,通過調用FeedbackServiceImpl中的方法,處理查看所有用戶反饋信息的業(yè)務邏輯,在該層通過調用Dao

51、層與數(shù)據庫進行連接,從數(shù)據庫中獲取所有用戶反饋的信息,最好逐層反饋給feedback.jsp頁面進行展示。詳情可見表“動物醫(yī)療平臺”的查看用戶反饋信息表3.9。表3.9 “動物醫(yī)療平臺”的查看反饋信息表編號類名或方法名功能描述 1feedback.jsp顯示查看用戶反饋信息界面,可以查看所有用戶的反饋信息,以ajax方式獲取FeedbackController傳遞的數(shù)據。 2FeedbackController將數(shù)據傳給FeedbackServiceImpl。 3FeedbackServiceFeedbackServiceImpl的接口。 4FeedbackServiceImpl處理獲取所有用

52、戶反饋信息業(yè)務,調用Dao層的方法并將數(shù)據傳給Dao層。 5FeedbackDaoFeedbackDaoMapper.xml的接口。 6FeedbackDaoMapper.xml存放sql語句,通過sql語句獲取數(shù)據庫中的數(shù)據,之后逐層返回到feedback.jsp頁面顯示。(4)用戶修改密碼日志功能用戶和醫(yī)生在注冊之后,為了提高用戶和醫(yī)生賬號的安全性,防止惡意修改密碼,管理員需要對這兩個角色修改密碼的信息進行記錄和查看。因此以用戶為例,添加用戶修改密碼日志時序圖如圖3.12。圖3.12 “動物醫(yī)療平臺”的添加用戶修改密碼日志時序圖添加用戶修改密碼日志功能,對用戶修改密碼操作的日志進行保存。該

53、功能涉及到Spring的aop技術首先在PasswordLogAspect中進行日志對象的封裝,在該層將封裝好的數(shù)據傳給PasswordLogServiceImpl,需要提前在mybatis+spring.xml配置文件中配置切面和切點,將設置好的動態(tài)代理類加在PasswordLogServiceImpl上。PasswordLogServiceImpl接受到數(shù)據,將數(shù)據傳給dao層,通過dao層連接數(shù)據庫,將數(shù)據添加到數(shù)據庫中,最后逐層返回。詳情可見表“動物醫(yī)療平臺”的添加用戶修改密碼日志表3.10。表3.10 “動物醫(yī)療平臺”的添加用戶修改密碼日志表編號類名或方法名功能描述 1Passwor

54、dLogAspect動態(tài)代理類,用戶在進行修改密碼操作時,執(zhí)行該類,進行添加日志操作,將封裝好的對象,傳給PasswordLogServiceImpl。 2UserServiceImpl主體類,用戶修改密碼的業(yè)務邏輯層。 3mybatis+spring.xmlspring和mybatis的配置文件,在里面配置切面和切點,將動態(tài)代理類加在主體類上。 4PasswordLogServicePasswordLogServiceImpl的接口。 5PasswordLogServiceImpl接收到數(shù)據,調用dao層的方法,將數(shù)據傳給dao層。 6PasswordLogDaoPasswordLogMap

55、per.xml的接口。 7PasswordLogMapper.xml存放sql語句,通過sql語句將數(shù)據添加到數(shù)據庫,之后逐層返回。3.3 本章小結本章介紹了動物醫(yī)療平臺的系統(tǒng)設計,總體包括動物醫(yī)療平臺的總體設計和詳細設計,系統(tǒng)的總體設計主要介紹該平臺的大體功能,先是通過體系結構介紹了平臺的設計模式,隨后介紹了平臺整體軟件結構,最后介紹了平臺整體功能的結構。系統(tǒng)的詳細設計主要展示了平臺的E-R圖,平臺所擁有的數(shù)據庫表、并通過時序圖介紹了平臺核心功能的詳細設計。4 系統(tǒng)實現(xiàn)4.1 開發(fā)環(huán)境動物醫(yī)療平臺的開發(fā)環(huán)境可分為硬件環(huán)境和軟件工具,詳情可見表4.1動物醫(yī)療平臺的硬件環(huán)境和表4.2動物醫(yī)療平臺的軟件工具。根據動物醫(yī)療平臺

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論