基于Spring Boot寵物寄養(yǎng)管理系統(tǒng)的設計與實現(xiàn)_第1頁
基于Spring Boot寵物寄養(yǎng)管理系統(tǒng)的設計與實現(xiàn)_第2頁
基于Spring Boot寵物寄養(yǎng)管理系統(tǒng)的設計與實現(xiàn)_第3頁
基于Spring Boot寵物寄養(yǎng)管理系統(tǒng)的設計與實現(xiàn)_第4頁
基于Spring Boot寵物寄養(yǎng)管理系統(tǒng)的設計與實現(xiàn)_第5頁
已閱讀5頁,還剩55頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

PAGEPAGEIII摘要隨著中國城市經(jīng)濟社會的迅速發(fā)展,以及人民的生活水平日益提升,更多的家庭開始選擇以飼養(yǎng)寵物作為排解壓力的一種方法,也有人更將寵物視為親人,成為生活中不可缺少的一部分。然而由于寄養(yǎng)模式的落后,在節(jié)假日前后需要寄養(yǎng)寵物的不斷增多,隨之而來的是衛(wèi)生、交通和安全等問題越來越突出。如何有效的加強對寵物寄養(yǎng)的管理,促使人們在進行寵物寄養(yǎng)時,能更好地得到享有的權益,更加規(guī)范、專業(yè)化的寄養(yǎng)寵物,成為相關管理部門和飼養(yǎng)寵物的主人所關注的重點。本文通過對寵物寄養(yǎng)的現(xiàn)狀進行分析,總結了目前寵物寄養(yǎng)平臺在各方面存在的優(yōu)缺點,再對課題的研究背景和實現(xiàn)意義做了詳細的分析和介紹,對國內(nèi)外的寵物市場及其相關行業(yè)發(fā)展情況做了簡要的對比和介紹。其次簡要介紹了實現(xiàn)本寵物寄養(yǎng)系統(tǒng)所需要的關鍵技術,SpringBoot的使用可以讓我們進行更為簡單、快速、方便地開發(fā),使用MyBatis持久層框架降低SQL語句使得代碼結構低耦合,使用開源免費的MySQL數(shù)據(jù)庫來存儲寵物寄養(yǎng)業(yè)務數(shù)據(jù)和基礎用戶數(shù)據(jù),前端框架使用LayUI使得系統(tǒng)界面簡潔、操作便捷??偟膩碚f,寵物寄養(yǎng)系統(tǒng)的功能基本實現(xiàn),同時性能和安全性也得到了相應的保障;系統(tǒng)解決了飼主由于工作或度假等多方面原因無法照料寵物的問題,利用Java等相關開發(fā)技術,提出并實現(xiàn)了一個基于SpringBoot的寵物寄養(yǎng)系統(tǒng),為寵物寄養(yǎng)管理提供一個綜合、全面的信息管理系統(tǒng)。關鍵字:SpringBoot;寵物寄養(yǎng);管理系統(tǒng)目錄TOC\o"1-2"\h\u30589第一章緒論 1211001.1項目研究背景與意義 1272951.2國內(nèi)外研究現(xiàn)狀 3233521.3論文主要研究內(nèi)容 33261.4論文組織結構 432061第二章相關概念與技術理論綜述 5322242.1前端開發(fā)技術介紹 585932.2后端技術介紹 5317762.3MySQL介紹 6144042.4本章小結 62641第三章系統(tǒng)需求分析 77483.1可行性分析 716113.2用戶需求分析 8185063.3軟件需求 1289353.4非功能性需求 12252023.5本章小結 1325118第四章系統(tǒng)總體設計 14253094.1系統(tǒng)總體設計思路 14290004.2系統(tǒng)總體架構設計 1592844.3系統(tǒng)功能模塊設計 1774.4系統(tǒng)數(shù)據(jù)庫設計 1982614.5本章小結 2512266第五章系統(tǒng)詳細設計與實現(xiàn) 26202405.1系統(tǒng)環(huán)境 26270865.2寄養(yǎng)商品管理模塊設計與實現(xiàn) 27188735.3寵物寄養(yǎng)模塊設計與實現(xiàn) 3039615.4寄養(yǎng)工作管理模塊設計與實現(xiàn) 37276185.5寵物領養(yǎng)模塊設計與實現(xiàn) 40294655.6本章小結 4522482第六章系統(tǒng)測試 4629386.1測試環(huán)境 4662046.2主要功能測試 46213016.3性能測試 53136316.4本章小結 5429231第七章總結與展望 55323607.1總結 5530917.2展望 556587參考文獻 569146致謝 57PAGEPAGE1緒論1.1項目研究背景與意義隨著中國九十年代的經(jīng)濟快速發(fā)展,人們在思想上不斷進步改變,而且生活上也開始富裕起來了,大批人也就是從此刻開始飼養(yǎng)寵物,寵物開始逐漸成為人們最好的朋友。在美國,以貓和狗等寵物為伴侶大多數(shù)都為老年人和窮人,而中國卻相反,在家里養(yǎng)寵物的的人則更多地集中在“80”和“90”的年輕群體上。青年人的教育水平有所提高,由于生活和工作的快速發(fā)展以及高房價帶來的壓力,人們的生育意愿急劇下降,貓和狗開始成為家庭中不可缺少的一員。在中國,養(yǎng)寵物的家庭越來越多,寵物數(shù)量在急劇飆升,同時寵物已經(jīng)成為很多家庭不可或缺的成員[1]。但由于飼養(yǎng)家庭中會出現(xiàn)出差或者旅行等各種原因,擁有寵物者不得不與寵物暫時分別,造成“空巢寵物”的出現(xiàn),此如何合理地安置寵物就成了寵物主人必須考慮的一大問題[2]。面對寵物店寄養(yǎng)的高額消費且寄養(yǎng)品質(zhì)得不到充分保證,以及朋友家寄養(yǎng)的不便等問題,人們往往會陷入兩難的境地。傳統(tǒng)的寄養(yǎng)模式往往出現(xiàn)不規(guī)范或者“一籠難求”的現(xiàn)象,現(xiàn)擬制作一個用戶在出行期間可以寄養(yǎng)寵物的網(wǎng)站,為用戶提供寵物寄養(yǎng)和查看寵物寄養(yǎng)日常等功能。本章將圍繞上述存在的問題,詳細介紹基于SpringBoot寵物寄養(yǎng)管理系統(tǒng)的背景及意義。1.1.1研究背景根據(jù)網(wǎng)絡調(diào)查顯示,目前我國的寵物主人在離開寵物時,3.68%的人選擇關在家里,47.95%的人選擇找其他人代養(yǎng),只有8.19%的人選擇專業(yè)機構寄養(yǎng)[3]。因為一線城市的經(jīng)濟消費能力較高,飼養(yǎng)寵物人數(shù)比例較為多,加劇了寵物寄養(yǎng)行業(yè)的發(fā)展,但對于經(jīng)濟稍落后的二三線城市而言來說,一線城市進行寵物寄養(yǎng)的人數(shù)較多,二三線城市的家庭更多都是讓寵物獨自在家。但隨著飼養(yǎng)寵物的人不斷增多,很多家庭對寵物寄養(yǎng)的需求,尤其是節(jié)假日前后,出現(xiàn)“一籠難求”的現(xiàn)象[4]。但很多的寵物寄養(yǎng)的不是很規(guī)范,甚至會威脅到寵物的生命安全?,F(xiàn)有的傳統(tǒng)的寄養(yǎng)模式多為在寵物醫(yī)院或是寵物店里的眾多服務項目中的一項服務,只能去店內(nèi)詢問有沒有此服務,有時預約滿了只能去下一家,十分的不方便。且服務者沒有能力提供較為正規(guī)的寄養(yǎng),面對店內(nèi)眾多的服務類型,不能夠?qū)I(yè)的照料所需要寄養(yǎng)的寵物,從而出現(xiàn)了寵物在寄養(yǎng)期間出現(xiàn)一些不良反應

。且寵物寄養(yǎng)收費不規(guī)范,寄養(yǎng)的方式單一,寵物主人不能按照自己的需求所選擇適合的寵物寄養(yǎng)方式。由于寵物主人外出與自己的寵物產(chǎn)生了一定的距離,寵物主人對于寵物的寄養(yǎng)情況是有一定的顧慮的,對于寵物寄養(yǎng)的安全、飼養(yǎng)和生活等問題比較擔心,對寄養(yǎng)機構不放心和不信任。鑒于寵物寄養(yǎng)行業(yè)出現(xiàn)了的很多不同的問題,并結合寵物飼養(yǎng)者對寵物寄養(yǎng)的日益增長的需求,將寵物護理與寵物醫(yī)院、寵物超市和其他設施分開,不再是獸醫(yī)診所和寵物超市的附屬服務,而是與獸醫(yī)診所和寵物超市合作,實現(xiàn)互利共贏,促進寵物寄養(yǎng)市場不斷地發(fā)展。將寵物寄養(yǎng)與互聯(lián)網(wǎng)進行密切合作,寵物主人可以在線預約寵物寄養(yǎng),還可以使用計算機以實時照片的形式查看護理過程中的所有環(huán)節(jié),如寵物喂養(yǎng)、娛樂活動、預防性診斷和治療,并對護理工作提供及時有效的反饋,使寵物護理過程和護理活動透明、公開。解決寵物主人對寵物安全、喂養(yǎng)和營養(yǎng)的擔憂。信息化管理和精細化服務是市場對未來畜養(yǎng)設施質(zhì)量建設的新要求。經(jīng)過分析研究,我將采用SpringBoot來完成后臺管理系統(tǒng)的搭建與實現(xiàn),系統(tǒng)中的功能數(shù)據(jù)能夠得到高效規(guī)范的管理,通過物聯(lián)網(wǎng)技術結合互聯(lián)網(wǎng)技術的綜合運用,實現(xiàn)寵物信息的整合和高效管理[5],為寵物主人提供一個方便快捷的移動終端進行寵物寄養(yǎng)的窗口,更好地為消費者提供全方位、全過程的服務,有利于消費者更好地進行寵物的寄養(yǎng),從一定程度上可以解決消費者對于出行不便照料寵物的難題,提高寄養(yǎng)機構的工作效率,使得寄養(yǎng)道路更為專業(yè)化。1.1.2研究意義寵物產(chǎn)業(yè)的繁榮在一定程度上豐富了人們的精神文化生活,也促進了寵物市場的經(jīng)濟增長。相比國際寵物市場,國內(nèi)寵物行業(yè)起步較晚,但發(fā)展勢頭迅猛,中國寵物產(chǎn)業(yè)聯(lián)盟等聯(lián)合發(fā)布的《2016年度中國寵物行業(yè)白皮書》顯示,2016年中國寵物行業(yè)市場總體消費規(guī)模達1220億元,預計到2020年,國內(nèi)寵物市場規(guī)模將超2000億元,年均增速有望達到20%,整個寵物行業(yè)將迎來“井噴時代”[6]。研究表明,目前國內(nèi)寵物飼養(yǎng)數(shù)量不斷增長,截至2017年,國內(nèi)飼養(yǎng)寵物的家庭占全國家庭總數(shù)的17%,以貓狗為主的寵物數(shù)量高達8746萬只。而美國飼養(yǎng)寵物的家庭占比高達68%[7]。數(shù)據(jù)顯示,中國的寵物主要是年輕人。然而,由于一系列原因,例如無可避免的旅行、旅行、海外居住,甚至在工作和城市生活中懷孕和分娩,寵物主人被迫暫時與寵物分離。這時,如何妥善安置寵物成為寵物主人的一個重要問題。由于飼養(yǎng)寵物的家庭數(shù)量的增加,寄養(yǎng)寵物的需求急劇增加,使得寵物寄養(yǎng)的服務逐漸被人們所接受。寵物寄養(yǎng)系統(tǒng)主要結合互聯(lián)網(wǎng)時代發(fā)展的需求,順應時代發(fā)展,使用SpringBoot框架開發(fā)的寵物寄養(yǎng)系統(tǒng)完成寵物的寄養(yǎng),使得寵物主人能合理利用此系統(tǒng)方便快捷的解決外出安置寵物的問題,有效提高寄養(yǎng)寵物機構的工作效率;將寵物信息存儲于MySQL數(shù)據(jù)庫,節(jié)約人工成本,低碳環(huán)保,使得預約寵物寄養(yǎng)信息更容易存儲;取代excel表格統(tǒng)計寵物收養(yǎng)和訂單統(tǒng)計,將數(shù)據(jù)以ECharts組件來完成統(tǒng)計圖的顯示,更能反映出數(shù)據(jù)的實時變化,再對寄養(yǎng)的工作更好的改進與反饋。此寵物寄養(yǎng)系統(tǒng)致力于實現(xiàn)透明化、高效化、專業(yè)化的寵物寄養(yǎng),以滿足在數(shù)字信息化時代寵物主人對于寵物寄養(yǎng)的需求。1.2國內(nèi)外研究現(xiàn)狀當前,我國已經(jīng)完全進入了信息時代,互聯(lián)網(wǎng)在各個方便為人們的生活帶來了便利。縱觀國內(nèi)外,已經(jīng)出現(xiàn)了很多令人滿意的寵物寄養(yǎng)線上平臺。國外的一個寄養(yǎng)平臺“Rover”,它提供一系列搜索、溝通服務、評分和支付服務。愛護小動物的人可以接觸到更多的寵物,同時獲得一筆收入。對于由于出差或生病等種種原因而對寵物寄養(yǎng)所有需求的人,在“Rover”平臺上可以獲得可提供寄養(yǎng)寵物服務的家庭的詳細信息,讓自己的寵物可以低廉的價格得到照料。而國內(nèi)在一些寵物經(jīng)濟發(fā)達的城市,出現(xiàn)了“小狗在家App”和智能寵物籠監(jiān)控系統(tǒng)設計與研發(fā)[8],該應用依托移動互聯(lián)網(wǎng),以家庭寄養(yǎng)為切入點,為寵物主人提供寄養(yǎng)、接送、洗澡等服務[9]。然而,對于這類寄養(yǎng)模式所能容納或接受的寵物數(shù)量、狀態(tài)或者種類過于局限,從寄養(yǎng)家庭規(guī)模和疾病防疫檢疫來看,不能完全保證寵物周圍的環(huán)境的安全,生活質(zhì)量保障不足,所能接受容納的寵物有限,寵物的生命安全得不到完全的保障,寄養(yǎng)服務的質(zhì)量參差不齊。現(xiàn)如今需要的是一個專業(yè)化的管理和建設出寵物寄養(yǎng)經(jīng)濟空缺。與傳統(tǒng)渠道相比,互聯(lián)網(wǎng)平臺的維護過程嚴格規(guī)范,監(jiān)控管理系統(tǒng)完善,不僅便于動物的護理,而且讓人安心。將互聯(lián)網(wǎng)技術應用于寵物產(chǎn)業(yè),可以為市場上寵物寄養(yǎng)提供更科學、更方便、更實惠、更可靠的方向。綜上所述,雖然國內(nèi)外的寵物寄養(yǎng)平臺功能相對完善,但市面上依舊缺少更為透明化、高效化、專業(yè)化的寵物寄養(yǎng)系統(tǒng)的開發(fā)。1.3論文主要研究內(nèi)容通過針對國內(nèi)外現(xiàn)有寵物寄養(yǎng)系統(tǒng)的優(yōu)缺點來展開研究,再對用戶的需求分析,本寵物寄養(yǎng)管理系統(tǒng)將合理利用互聯(lián)網(wǎng),解決由于工作或度假等多方面原因無法照料寵物的現(xiàn)狀出發(fā),實現(xiàn)寵物寄養(yǎng)系統(tǒng)實現(xiàn),本文主要研究以下幾點內(nèi)容:對國內(nèi)外已擁有寄養(yǎng)系統(tǒng)系統(tǒng)做一個分析,發(fā)現(xiàn)他們的共同的優(yōu)缺點,分析得出系統(tǒng)的主要功能為:寄養(yǎng)寵物、領養(yǎng)寵物、查看寵物寄養(yǎng)工作、留言、寄養(yǎng)數(shù)據(jù)可視化。結合用戶需求與社會的發(fā)展的研究,采用網(wǎng)頁進行開發(fā)寵物寄養(yǎng)管理系統(tǒng),使消費者能在互聯(lián)網(wǎng)環(huán)境下使用此寄養(yǎng)系統(tǒng),解決由于工作或度假等多方面原因無法照料寵物的問題。研究寵物寄養(yǎng)系統(tǒng)的可行性,了解寵物寄養(yǎng)的流程,對寵物寄養(yǎng)系統(tǒng)在互聯(lián)網(wǎng)上進行設計研究。通過分析寵物寄養(yǎng)的需求分析與設計,完成系統(tǒng)的主要功能需求設計,最終采用SpringBoot技術來開發(fā)寵物寄養(yǎng)系統(tǒng),并對此系統(tǒng)的設計與實現(xiàn)進行詳細的介紹。3.實現(xiàn)寵物寄養(yǎng)系統(tǒng)的基本功能,并對其核心功能寵物寄養(yǎng)、寵物領養(yǎng)、寵物寄養(yǎng)工作、寵物工作留言加以測試,并對實現(xiàn)的功能與未來的發(fā)展進行分析。1.4論文組織結構第一章:緒論。本章從人們進入科技時代、人們生活需求的變化以及寵物寄養(yǎng)管理的需求出發(fā),闡明了人們對寵物寄養(yǎng)管理系統(tǒng)需求,從而引出開發(fā)寵物寄養(yǎng)系統(tǒng)的必要性。第二章:相關概念與技術理論綜述。本章鑒于當下使用的開發(fā)軟件技術與寵物寄養(yǎng)系統(tǒng)的需求,介紹了本系統(tǒng)將使用于開發(fā)的軟件與技術,其中包括SpringBoot、MyBatis、LayUI、MySQL等技術的介紹。第三章:系統(tǒng)需求分析。本章首先對寵物寄養(yǎng)管理系統(tǒng)的主要需求進行分析,然后對系統(tǒng)的角色設計,再設計系統(tǒng)所需要的業(yè)務流程,最后對寵物寄養(yǎng)系統(tǒng)的需求功能設計與研究。第四章:系統(tǒng)總體設計。本章以寵物寄養(yǎng)系統(tǒng)對用戶的需求與寄養(yǎng)環(huán)節(jié)的流程展開進一步的分析,包括寵物寄養(yǎng)工作、寵物領養(yǎng)、寵物工作、寵物寄養(yǎng)、基礎數(shù)據(jù)管理等,概述了寵物寄養(yǎng)管理系統(tǒng)的設計思路與總體架構設計思路等內(nèi)容。第五章:系統(tǒng)詳細設計與實現(xiàn)。本章對寵物寄養(yǎng)管理系統(tǒng)的需求進行了進一步的以角色來加以區(qū)分,再將系統(tǒng)的需求功能一一介紹設計實現(xiàn)思路,并展現(xiàn)實現(xiàn)的過程,充分展示設計系統(tǒng)的實現(xiàn)功能介紹。第六章:系統(tǒng)測試。本章主要介紹了寵物寄養(yǎng)系統(tǒng)的基本測試環(huán)境,對寵物寄養(yǎng)管理系統(tǒng)的功能模塊進行測試分析并解決其中出現(xiàn)的問題。第七章:總結與展望。本章總結了寵物寄養(yǎng)管理系統(tǒng)與論文的實際成果,并闡述系統(tǒng)存在的不足,以及對寵物寄養(yǎng)系統(tǒng)的實際應用前景的展望。相關概念與技術理論綜述由于“科技時代”的到來,越來越多的設計者提出的基于SpringBoot快速開發(fā)平臺,此技術能更加快速搭建各行各業(yè)的管理系統(tǒng),開發(fā)人員無需掌握大量底層技術架構,大大減少項目開發(fā)工作量,縮短項目的實施周期,大幅提升交付率,節(jié)約了企業(yè)的研發(fā)成本和人力成本,使用平臺快速實現(xiàn)用戶需求[10]。以寵物寄養(yǎng)系統(tǒng)對用戶的需求與當下的開發(fā)軟件的發(fā)展相結合分析得出,后端使用SpringBoot與MyBatis,前端使用LayUI開發(fā)。SpringBoot用于搭建管理系統(tǒng)不僅方便,還保障了安全性。同時,可以滿足多種角色的需求,使得用戶的體驗感更好。2.1前端開發(fā)技術介紹2.1.1LayUI介紹LayUI是一組開源的webUI解決方案。它采用自己的經(jīng)典模塊化規(guī)范,并遵循原生HTML格式CSSendJS的開發(fā)模式。它通常適用于web界面的快速開發(fā)。LayUI不同于那些基于底層MVVM的前端框架。它不必使用不同的前端工具。它只需要查看瀏覽器本身就可以與所有必需的元素進行通信。2.1.2JQuery介紹JQuery是一個快速簡潔的JavaScript框架,具有獨特的鏈語法和簡潔明了的多功能界面。CSS選擇器可以通過提供高效靈活的CSS選擇器進行擴展。它具有簡單的插件擴展機制和豐富的插件。它封裝了JavaScript的常見功能代碼,并提供了一個簡單的JavaScript設計模型來優(yōu)化HTML文檔操作、事件處理、動畫設計和Ajax交互。2.2后端技術介紹2.2.1SpringBoot介紹SpringBoot設計目的是用來簡化新Spring應用的初始搭建以及開發(fā)過程,提高開發(fā)效率。更多開發(fā)者使用SpringBoot開發(fā)的java應用程序,可直接使用java-jar運行,無需配置服務器,內(nèi)置Servlet容器,即Tomcat,Jetty或Undertow三種常用web服務器,達到開箱即用的效果。同時SpringBoot使用注解的方式,對代碼進行自動配置,能有效減少代碼的工作量,降低代碼的冗余度,從而達到快速開發(fā)的效果。2.2.2MyBatis介紹MyBatis是支持普通SQL查詢,存儲過程和高級映射的優(yōu)秀持久層框架。MyBatis消除了幾乎所有的JDBC代碼和參數(shù)的手工設置以及結果集的檢索。MyBatis使用簡單的XML或注解用于配置和原始映射,將接口和Java的POJOs(PlainOrdinaryJavaObjects,普通的Java對象)映射成數(shù)據(jù)庫中的記錄。2.3MySQL介紹MySQL是最流行的關系型數(shù)據(jù)庫管理系統(tǒng)之一,跨平臺,支持多個操作系統(tǒng),支持多種語言,MySQL的適用范圍更加廣泛,開放源代碼且無版權制約,自主性強、使用成本低。MySQL是開源的,不需要支付額外的費用,使用MySQL作為后臺存儲數(shù)據(jù)庫的容器,能有效降低開發(fā)成本,支持大型系統(tǒng)的數(shù)據(jù)庫??梢蕴幚頁碛猩锨f條記錄的大型數(shù)據(jù)庫,MySQL是完全網(wǎng)絡化的,其數(shù)據(jù)庫可在因特網(wǎng)上的任何地方訪問,因此,可以和任何地方的任何人共享數(shù)據(jù)庫。本系統(tǒng)使用MySQL5.5.27版本對數(shù)據(jù)庫數(shù)據(jù)管理。2.4本章小結第二章節(jié)主要是介紹了目前所使用的各種技術,以及在后端和前端的應用。后端部分介紹了SpringBoot技術和MyBatis數(shù)據(jù)庫的底層操作數(shù)據(jù)庫技術,在前面對LayUI和其他技術做了簡單的介紹,并將MySQL作為數(shù)據(jù)庫的存儲庫。系統(tǒng)需求分析而對于系統(tǒng)開發(fā)中最首要的階段為需求分析階段,需求分析階段得到的結果是項目開發(fā)中設計階段、編碼階段、測試階段和維護階段的重要基礎[11]。本章通過對寵物寄養(yǎng)系統(tǒng)的切實需求、與當下寵物寄養(yǎng)的需求背景出發(fā),本章主要圍繞可行性分析和系統(tǒng)功能性需求等展開分析與結果。3.1可行性分析在項目成立之后,可行性分析是一個可以檢測項目是否能繼續(xù)進行的一個分析手段。而這個手段是在我們發(fā)展和研究項目的時候,對于評估系統(tǒng)的可研究性而言是一個非常重要的一個手段,將決定了這個軟件是否可以繼續(xù)進行研究和發(fā)展的。3.1.1技術可行性對國內(nèi)市場上的同類寵物寄養(yǎng)平臺進行簡單對比分析可知:系統(tǒng)的設計與實現(xiàn)必須依照用戶的需要不斷進行迭代,才能更好的給用戶帶來新的使用體驗,更好的解決相關的問題與完成需求的功能。隨著互聯(lián)網(wǎng)不斷的深入人們的生活的方方面面,互聯(lián)網(wǎng)經(jīng)濟不斷的快速發(fā)展,互聯(lián)網(wǎng)在生活中不斷的被普及,完善的網(wǎng)絡的設施的極大的為網(wǎng)上交易市場的發(fā)展提供了良好的技術基礎?,F(xiàn)在的網(wǎng)絡對于計算機的安全性有著很高的需求,包括再對于數(shù)據(jù)上使用了加密算法,使得我們的網(wǎng)絡數(shù)據(jù)管理更為安全,網(wǎng)絡傳輸數(shù)據(jù)將會更為安全性、持久性和完整性,保障了我們在互聯(lián)網(wǎng)上的人生安全。電子技術應用,人們可以通過電子支付來對商品進行交易,極大的方便了我們的日常生活,使得我們的交易更加透明與安全。對于硬件來說,計算機硬件的處理速度已經(jīng)完全滿足了當下的社會的需求了。高速大容量硬盤非常常見,網(wǎng)絡速度一般可達100MB。在軟件方面,數(shù)據(jù)庫技術已經(jīng)很強。3.1.2經(jīng)濟可行性近年來,截至2020年底,中國寵物產(chǎn)業(yè)市場規(guī)模2988億元,比上年增加467億元,增長18.5%;預計2021年動物產(chǎn)業(yè)規(guī)模將達到3488億元。中國的寵物家庭可到達每年平均花銷一萬元左右在寵物所需要的用品上。中國寵物市場消費增長趨勢明顯,促進了當下的寵物市場的發(fā)展。由于寵物國產(chǎn)用品不斷增多,相應的價格越來越低,大多數(shù)人都可以接受飼養(yǎng)寵物的花費,使得養(yǎng)寵物已經(jīng)成為近年來的一種流行趨勢,未來國內(nèi)寵物行業(yè)發(fā)展?jié)摿薮骩12]。此外,系統(tǒng)開發(fā)采用的后臺SpringBoot和MyBatis,數(shù)據(jù)庫MySQL等所有開發(fā)技術都是開源免費的,硬件只需購買或租用一臺標準的WindowsServer服務器即可,系統(tǒng)投入使用后,由于后臺框架和服務器體系結構相對穩(wěn)定,新項目的實施成本和系統(tǒng)后期的管理和維護成本不高,減少了大量的人工,同時可以為寵物寄養(yǎng)相關企業(yè)帶來一定的經(jīng)濟效益,因此從經(jīng)濟的角度講是可行的。3.1.3社會可行性至今為止,互聯(lián)網(wǎng)時代發(fā)展已經(jīng)非常成熟,而寵物市場處于一個快速增長階段,對面寵物寄養(yǎng)市場的管理還存在一定的空缺。從就整體而言,現(xiàn)存在的寵物寄養(yǎng)平臺不能夠更能方便進行寵物寄養(yǎng)的一個預約,且寄養(yǎng)期間不能完全保障寵物寄養(yǎng)工作的安全性和專業(yè)性,無法與寵物主人建立信息渠道,這一點是需要系統(tǒng)需要解決與設計的功能。由此證明,擁有此功能的系統(tǒng)具有較大的市場需求。3.2用戶需求分析本文所討論的寵物寄養(yǎng)系統(tǒng),主要是根據(jù)現(xiàn)寵物寄養(yǎng)市場的需求,以寵物主人因故不能照料自己的寵物的問題為研究對象,其具體問題如下概述:寵物主人有寄養(yǎng)需求時,因為現(xiàn)有的傳統(tǒng)的寄養(yǎng)模式多為寵物醫(yī)院或是寵物店的一種附屬類型服務,需要花費一定的時間去詢問店內(nèi)是否有寄養(yǎng)服務或是寄養(yǎng)服務是否還有預約名額,浪費了寵物主人的精力與時間。對于傳統(tǒng)的寄養(yǎng)模式而言,面對店內(nèi)擁有著眾多的服務類型,養(yǎng)機構管理者大多數(shù)沒有專業(yè)化照顧寵物的經(jīng)驗與知識,不能夠?qū)I(yè)的照料所需要寄養(yǎng)的寵物,特別是一些需要特殊照顧的寵物,如孕期或是生病的寵物,不能為此提供專業(yè)的寄養(yǎng),從而導致了寵物在寄養(yǎng)期間出現(xiàn)一些不良反應,甚至死亡

。寵物寄養(yǎng)收費不規(guī)范,寄養(yǎng)的方式單一,寵物主人不能按照自己的需求所選擇適合的寵物寄養(yǎng)的房間與飼料,卻要付出所不對等的價格。由于寵物主人外出與自己的寵物產(chǎn)生了一定的距離,對于寵物寄養(yǎng)的安全、飼養(yǎng)和生活等問題比較顧慮,但傳統(tǒng)的寄養(yǎng)由于是附屬類型服,一般寄養(yǎng)機構不能夠及時準確的給予相應的回應。有部分寵物主人過了寄養(yǎng)結束的日子卻不來接自己的寵物回家,也失去聯(lián)系,將寵物棄養(yǎng),造成了寵物寄養(yǎng)機構的一些困擾,導致街道上出現(xiàn)了很多可憐的流浪貓和流浪狗。傳統(tǒng)的訂單與系統(tǒng)數(shù)據(jù)信息統(tǒng)計的方式大多以excel表格的來管理與保存,不能很好的觀察到數(shù)據(jù)的變化。由以上六點的需求分析,得以看出,開發(fā)一款實用專業(yè)化管理的寵物寄養(yǎng)系統(tǒng)的必要性。3.2.1系統(tǒng)需求概述當前國內(nèi)寵物市場對寵物寄養(yǎng)的需求日漸旺盛,但是與之相關的寵物寄養(yǎng)平臺與機構所能提供的寵物寄養(yǎng)服務卻十分不規(guī)范。例如“Rover”、“小狗在家App”等的寵物寄養(yǎng)互聯(lián)網(wǎng)產(chǎn)品,其重點在于為寵物尋找可寄養(yǎng)的家庭,但這其中也出現(xiàn)了一系列寄養(yǎng)不規(guī)范、不安全等問題,相對于為寵物主人提供專業(yè)且透明化的寄養(yǎng)寵物的系統(tǒng)資源卻十分匱乏。為解決這一問題,通過將互聯(lián)網(wǎng)技術應用于寵物行業(yè)的方式,為市場上寵物寄養(yǎng)提供更加規(guī)范合理的環(huán)境,研發(fā)一個有針對性的寵物寄養(yǎng)系統(tǒng),該系統(tǒng)的目的就是為因外出的寵物主人無法照料自己的愛寵而提供合理規(guī)范的寵物寄養(yǎng)、寵物工作的查看留言以及對被遺棄寵物的領養(yǎng)。通過互聯(lián)網(wǎng)的便利交互,目標明確用戶,提供專業(yè)化寄養(yǎng)寵物服務事項,搶占寵物寄養(yǎng)的市場,真正實現(xiàn)線上結合線下服務,實現(xiàn)利益最大化。綜上所述,本系統(tǒng)的開發(fā)工作應當解決以下問題:寄養(yǎng)商品管理。包括對寵物寄養(yǎng)房間以及寵物用品等各類產(chǎn)品的上架與庫存數(shù)量的管理;包括在線支付體系以及對寄養(yǎng)商品的評價體系。在線預約寵物寄養(yǎng)。寵物主人可以進行填寫寄養(yǎng)寵物、寄養(yǎng)預約時間等的寄養(yǎng)信息。寵物寄養(yǎng)工作。用戶通過平臺可以實時查看寵物寄養(yǎng)工作日常,同時以留言的方式對工作進行反饋。寵物領養(yǎng)。用戶可以通過本系統(tǒng)查看待領養(yǎng)的寵物信息,結合自身的實際情況合理進行領養(yǎng)自己喜歡的寵物。訂單管理。依據(jù)用戶的購買記錄以及領養(yǎng)記錄,為管理員提供更為直觀且方便的訂單與領養(yǎng)視圖,可以為用戶提供更好的使用此系統(tǒng)的體驗。3.2.2需求用例分析對于以下針對包括寵物寄養(yǎng)信息管理、寄養(yǎng)商品管理、在線預約寵物寄養(yǎng)、寵物寄養(yǎng)工作、寵物領養(yǎng)和訂單管理在內(nèi)的核心功能進行展開說明分析。寄養(yǎng)商品管理通過需求分析得出寄養(yǎng)商品管理所涉及的兩個主要用戶角色,即寵物主人、工作人員兩個執(zhí)行者。根據(jù)每一個執(zhí)行者所涉及到的需求,分別分析出各自的用例:寵物主人擁有寄養(yǎng)商品購買、寵物寄養(yǎng)使用以及對寄養(yǎng)商品評價的用例。工作人員擁有訂單管理、寄養(yǎng)商品管理以及商品營銷的用例。具體如圖3-1所示。圖3-1寄養(yǎng)商品管理用例圖寵物寄養(yǎng)通過需求分析得出寵物寄養(yǎng)所涉及的兩個主要用戶角色,即寵物主人、工作人員兩個執(zhí)行者。根據(jù)每一個執(zhí)行者所涉及到的需求,分別分析出各自的用例:寵物主人擁有填寫寵物寄養(yǎng)信息和查看寵物寄養(yǎng)信息的用例。工作人員擁有寵物寄養(yǎng)信息管理和寵物寄養(yǎng)狀態(tài)統(tǒng)計的用例。具體如圖3-2所示。圖3-2寵物寄養(yǎng)用例圖寵物寄養(yǎng)工作通過需求分析得出寵物寄養(yǎng)工作管理所涉及的兩個主要用戶角色,即寵物主人、工作人員兩個執(zhí)行者。根據(jù)每一個執(zhí)行者所涉及到的需求,分別分析出各自的用例:寵物主人擁有查看寵物寄養(yǎng)工作和寄養(yǎng)工作留言的用例。工作人員擁有寄養(yǎng)工作管理的用例。具體如圖3-3所示。圖3-3寵物寄養(yǎng)工作管理用例圖寵物領養(yǎng)通過需求分析得出寵物領養(yǎng)所涉及的兩個主要用戶角色,即寵物主人、工作人員兩個執(zhí)行者。根據(jù)每一個執(zhí)行者所涉及到的需求,分別分析出各自的用例:寵物主人擁有領養(yǎng)寵物和查看已領養(yǎng)寵物的用例。工作人員擁有待領養(yǎng)寵物管理、寵物領養(yǎng)狀態(tài)統(tǒng)計的用例。具體如圖3-4所示。圖3-4寵物領養(yǎng)用例圖訂單管理根據(jù)每一個執(zhí)行者所涉及到的需求,分別分析出各自的用例:寵物主人可以新增包含支付等細節(jié)在內(nèi)的訂單。工作人員可以管理支付模塊以及訂單模塊,并可以對此模塊中的訂單查看與統(tǒng)計,將支付管理功能中包括的微信與支付寶展開的支付功能加入此管理功能模塊中。具體如圖3-5所示。圖3-5訂單管理用例圖3.3軟件需求在需求分析初始階段,使用關聯(lián)圖對系統(tǒng)進行分析,可得3.2.1所描述的大致模塊,后續(xù)使用用例分析等建模方法對這些模塊進行細化分析,最終得到如圖3-6所示的功能結構。圖3-6系統(tǒng)功能結構圖3.4非功能性需求系統(tǒng)的非功能要求包括界面美觀、系統(tǒng)易用性、安全性等。界面美觀性系統(tǒng)最重要的使用戶的體驗感受。而界面的色彩搭配、布局排版、總體格調(diào)對于用戶的使用感尤為重要,良好的界面感官操作能讓用戶視覺感很為喜愛,也能為功能的實現(xiàn)操作帶來更加便利。因此,要求本系統(tǒng)的界面要做到好看的同時又便于用戶的操作。系統(tǒng)易用性對數(shù)據(jù)的讀取和顯示,在不影響使用者操作的情況下,可以優(yōu)化讀取和顯示的讀取和顯示。安全性該系統(tǒng)需要對使用者的個人資料及有關購買細節(jié)的保護。該系統(tǒng)采用md5密碼對系統(tǒng)用戶的口令進行加密,從而在一定程度上確保了密碼不會被盜用或破壞,從而保護使用者的財產(chǎn)。3.5本章小結本章首先介紹了寵物寄養(yǎng)管理系統(tǒng)的基本需求,接著對系統(tǒng)功能性需求進一步的探究,得出了系統(tǒng)所需的基礎功能以及核心功能,并對系統(tǒng)的核心功能:寄養(yǎng)商品管理、寵物寄養(yǎng)、寵物寄養(yǎng)工作管理、寵物領養(yǎng)等幾個系統(tǒng)重點功能展開詳細敘述。系統(tǒng)總體設計本章主要從寵物寄養(yǎng)系統(tǒng)的主要功能與與社會需求等方面分析,在此基礎上,詳細介紹了PC機后臺和PC機的各功能模塊的設計。最后,本文對系統(tǒng)的數(shù)據(jù)庫進行了詳細的描述,包括對數(shù)據(jù)庫的概念模型進行了分析和設計,并對各個數(shù)據(jù)表的結構和域進行了設計。4.1系統(tǒng)總體設計思路寵物寄養(yǎng)系統(tǒng)總體上采用的是B/S的架構模式。對于再此結構中,用戶使用瀏覽器對此操作,瀏覽器只處理少數(shù)業(yè)務邏輯,主要負責數(shù)據(jù)的傳輸和顯示,絕大多數(shù)業(yè)務邏輯由服務器實現(xiàn)。在PC后臺管理系統(tǒng)中,管理員和員工可以通過瀏覽器來獲取到寄養(yǎng)的數(shù)據(jù),從而可以更好的運營寵物寄養(yǎng),而我們的用戶可以通過PC客戶端系統(tǒng)來完成寵物寄養(yǎng)的需求與對寵物寄養(yǎng)的工作查看反饋的一個功能操作。系統(tǒng)的物理架構如圖4-1所示。圖4-1系統(tǒng)物理架構圖本系統(tǒng)的總體設計方案中涉及到的幾個部分給出如下詳細解釋:1.PC后臺管理端PC后臺管理端是與數(shù)據(jù)庫交互的主要區(qū)域,其實現(xiàn)的主要功能包含寄養(yǎng)商品管理、寵物寄養(yǎng)信息管理、寄養(yǎng)工作管理、待領養(yǎng)寵物管理、用戶、菜單管理等基本信息的管理,PC后臺管理端是系統(tǒng)最重要的地方。2.PC用戶端PC用戶端承載著寵物寄養(yǎng)功能模塊,寵物主人通過PC用戶端查看寄養(yǎng)商品,進行寵物寄養(yǎng)、查看寵物寄養(yǎng)信息、對寄養(yǎng)商品評價、查看待領養(yǎng)寵物信息、領養(yǎng)寵物、查看寄養(yǎng)工作、對寄養(yǎng)工作留言、維護個人信息等操作,滿足寵物主人在對于寵物寄養(yǎng)上的需求,合理運用互聯(lián)網(wǎng)技術與寵物寄養(yǎng)行業(yè)相結合,摒棄傳統(tǒng)的寄養(yǎng)模式,為寵物主人對寵物寄養(yǎng)開辟新形式,使得寵物主人進行寵物寄養(yǎng)更安心、高效、便利。3.數(shù)據(jù)庫服務器端本系統(tǒng)使用最為便捷的MySQL數(shù)據(jù)庫服務,MySQL數(shù)據(jù)庫服務承載著寵物寄養(yǎng)系統(tǒng)的所有數(shù)據(jù),數(shù)據(jù)庫的安全性與準確性,極大的保障了系統(tǒng)正常的運行。4.2系統(tǒng)總體架構設計軟件的總體架構設計在開發(fā)軟件的階段里面騎著開頭的作用,總體架構設計對系統(tǒng)的設計起著決定性作用。合理的軟件架構圖在一定程度上減輕了開發(fā)系統(tǒng)的難度,開發(fā)系統(tǒng)時能夠更加容易實現(xiàn)系統(tǒng)的需求,并能發(fā)現(xiàn)系統(tǒng)設計的合理程度,為以后系統(tǒng)能正常運行起到了奠定的作用。寵物寄養(yǎng)系統(tǒng)使用SpringBoot技術開發(fā),主要操作集中于代碼的Controller控制層,用戶在電腦端進行相關的操作,在界面上進行數(shù)據(jù)的交互,進行對需求的數(shù)據(jù)請求,代碼與數(shù)據(jù)庫進行一個接口傳送,后臺數(shù)據(jù)庫進行交互,在前端顯示相關的數(shù)據(jù)需求,并完成用戶的需求請求。綜上所述,對系統(tǒng)進行總體架構分析,得出系統(tǒng)的架構包括:前端、展現(xiàn)層、數(shù)據(jù)交互層、數(shù)據(jù)持久層、數(shù)據(jù)庫、基礎層,系統(tǒng)的總體架構設計圖如圖4-2所示。圖4-2系統(tǒng)總體架構設計圖依據(jù)系統(tǒng)的總體架構設計圖,可將系統(tǒng)層次劃分為四層:表示層、控制層、業(yè)務邏輯層、數(shù)據(jù)持久層。其具體介紹如下文所示:1.表示層表示層為用戶在系統(tǒng)中使用的功能界面,用于用戶對系統(tǒng)的操作來完成自己的需求。此系統(tǒng)的表示層主要采用了相對簡潔明了的LayUI作為前端開發(fā)的基礎,使用戶使用系統(tǒng)時更為簡單快捷,在繁忙的時候更方便進行寵物寄養(yǎng)需求。2.控制層控制層又叫控制層,它是一個連接到后臺的系統(tǒng)前端的接口。因為service是一種商業(yè)計劃,因此在這個層次上,應該編寫一些商業(yè)計劃代碼,將特定的商業(yè)過程寫入到服務中,服務并不是單純的對DAO的增刪和修改,service作為一個商業(yè)層面,更接近于特定的商業(yè)需求,因此,在這個層次上,一種方式就是可以向外部提供服務,比如在購物中心中產(chǎn)生訂單,這并不是簡單的添加訂單,而是要查看庫存,核實貨物等一系列的業(yè)務流程。3.業(yè)務邏輯層業(yè)務邏輯層是對系統(tǒng)的業(yè)務邏輯進行處理,按照功能要求來編寫邏輯代碼,使得系統(tǒng)能夠很好地實現(xiàn)需求函數(shù)。這一層從控制層接收對應的資料,執(zhí)行與業(yè)務有關的處理,并在需要時呼叫資料持久層,以實現(xiàn)與系統(tǒng)的數(shù)據(jù)交互。4.數(shù)據(jù)持久層數(shù)據(jù)保存層,就是將數(shù)據(jù)保存在計算機數(shù)據(jù)庫中,不會被破壞。該系統(tǒng)采用MyBatis作為數(shù)據(jù)持久層,MyBatis的界面實現(xiàn)就相當于.xml文件,將數(shù)據(jù)庫操作語句和代碼分開,便于操作和維護。4.3系統(tǒng)功能模塊設計功能模塊的劃分直接影響到整個系統(tǒng)的功能架構。在此基礎上,根據(jù)需求的挖掘,對系統(tǒng)的功能進行了劃分,將系統(tǒng)分為兩個部分,分別是PC和PC用戶,前者負責處理基本的寵物信息和服務,后者負責寵物的寄養(yǎng)。4.3.1PC后臺管理端功能模塊設計PC后臺管理端是支撐起整個系統(tǒng)運轉(zhuǎn)的關鍵所在,寵物寄養(yǎng)系統(tǒng)的后臺數(shù)據(jù)管理包括系統(tǒng)管理、寄養(yǎng)商品管理、寵物寄養(yǎng)管理、訂單管理、寄養(yǎng)工作管理、寵物領養(yǎng)管理等模塊,其PC后臺管理端的功能模塊結構圖如圖4-3所示。圖4-3PC后臺管理端功能結構圖4.3.2PC用戶端功能模塊設計PC用戶端部分主要由寵物主人操作。通過分析用戶需求,劃分出用戶端的主要功能模塊包含寵物寄養(yǎng)、我的兩大模塊,再由兩大模塊向下劃分,再劃分出更加詳細的功能模塊,其中寵物寄養(yǎng)模塊包含寵物商品、領養(yǎng)寵物兩大模塊;我的模塊包括個人信息、寵物寄養(yǎng)信息、寄養(yǎng)工作、領養(yǎng)寵物信息、訂單信息等模塊,其用戶端功能結構圖如圖4-4所示。圖4-4用戶端功能結構圖4.4系統(tǒng)數(shù)據(jù)庫設計合理地設計好數(shù)據(jù)庫尤為重要,合理的數(shù)據(jù)庫設計能加快數(shù)據(jù)的存儲、讀取速度,節(jié)約開發(fā)時間[13]。下面詳細介紹了概念模型設計與數(shù)據(jù)庫設計。4.4.1概念模型設計數(shù)據(jù)庫概念設計過程需要生成系統(tǒng)中所有信息的數(shù)據(jù)模型[14]。采用E-R圖對概念性模型設計來詳細介紹與設計,本系統(tǒng)的主要實體包括:管理員、工作人員、寵物主人、寄養(yǎng)商品、寵物寄養(yǎng)信息、待領養(yǎng)寵物信息等。以下主要介紹本系統(tǒng)的寄養(yǎng)商品、寵物寄養(yǎng)、成績管理、討論帖管理功能模塊的E-R模型設計。1.寄養(yǎng)商品模塊E-R模型設計寄養(yǎng)商品的實體主要包括工作人員、寵物主人、寄養(yǎng)商品。其中一個工作人員可以上新多件寄養(yǎng)商品,一件寄養(yǎng)商品僅由唯一工作人員上架。其E-R圖設計如圖4-5所示。圖4-5寄養(yǎng)商品模塊E-R圖2.寵物寄養(yǎng)模塊E-R模型設計寵物寄養(yǎng)的實體主要包括工作人員、寵物主人、訂單、寵物寄養(yǎng)信息、評價記錄。其中一個寵物主人可以訂購多個訂單,寵物主人的一條訂單只可以填寫一條寵物寄養(yǎng)信息;一條評價記錄僅與一條訂單相對應,寵物主人可以查看評價;寵物寄養(yǎng)信息、訂單信息由工作人員管理。其E-R圖設計如圖4-6所示。圖4-6寵物寄養(yǎng)模塊E-R圖3.寄養(yǎng)工作管理模塊E-R模型設計寄養(yǎng)工作管理模塊的實體主要包括工作人員、寵物主人、寵物工作信息、工作留言。其中一個工作人員可以發(fā)布多條寄養(yǎng)工作記錄,多條寄養(yǎng)工作記錄僅能被一個寄養(yǎng)此寵物的寵物主人查看;寵物主人的一條寄養(yǎng)工作信息只可以進行一次工作留言,一條工作留言僅與一條寄養(yǎng)工作信息相對應,工作人員可以多條查看評價。其E-R圖設計如圖4-7所示。圖4-7寄養(yǎng)工作管理模塊E-R圖4.寵物領養(yǎng)模塊E-R模型設計寵物領養(yǎng)模塊的實體主要包括工作人員、寵物主人、待領養(yǎng)寵物信息、已領養(yǎng)寵物。其中一個工作人員可發(fā)布多條待領養(yǎng)寵物信息;一個待領養(yǎng)寵物只能由一個寵物主人領養(yǎng),一個寵物主人可以領養(yǎng)多個寵物。其E-R圖設計如圖4-8所示。圖4-8寵物領養(yǎng)模塊E-R圖4.4.2表結構設計本系統(tǒng)最終設計出9張數(shù)據(jù)表。使用MySQL作為數(shù)據(jù)儲存的容器,提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫操作。寵物寄養(yǎng)系統(tǒng)的部分數(shù)據(jù)表設計如下所示:寵物寄養(yǎng)信息表(addr_list)。用于寵物主人進行寵物寄養(yǎng)時,存儲系統(tǒng)在確認訂單信息操作時填寫的寵物寄養(yǎng)信息,包括寵物寄養(yǎng)信息寄養(yǎng)編號、聯(lián)系人、聯(lián)系方式、預約時間、會員編號、寵物昵稱、寵物性別、寵物性別、寵物體型、寵物圖片、身體狀況等基本信息。寵物寄養(yǎng)信息表的數(shù)據(jù)表結構如表4-1寵物寄養(yǎng)信息表(addr_list)所示。表4-1寵物寄養(yǎng)信息表(addr_list)名稱字段字段類型(長度)是否為空備注寄養(yǎng)編號addr_idint(11)notnull主鍵(數(shù)據(jù)庫設置自動遞增)聯(lián)系人contact_namevarchar(100)聯(lián)系方式contact_phonevarchar(13)預約時間addr_ptimedatetime(0)會員編號addr_uidint(11)寵物昵稱addr_pnamevarchar(255)寵物性別addr_psexvarchar(255)寵物性別addr_ptypevarchar(255)寵物體型addr_pshapevarchar(255)寵物圖片addr_pgimagevarchar(255)身體狀況addr_phealthvarchar(255)寄養(yǎng)商品信息表(goods)。用于存儲寄養(yǎng)商品的信息,其中字段名包括其中字段名包括商品編號、商品名稱、商品圖片、商品價格、商品詳情、商品庫存、錄入時間、商品信息修改時間等基本信息。寄養(yǎng)商品信息表的數(shù)據(jù)表結構如表4-2寄養(yǎng)商品信息表(goods)所示。表4-2寄養(yǎng)商品信息表(goods)名稱字段字段類型(長度)是否為空備注商品編號gidint(11)notnull主鍵(數(shù)據(jù)庫設置自動遞增)商品名稱good_namevarchar(128)商品圖片good_imgvarchar(128)商品價格good_priceint(11)商品詳情good_detailtext(0)商品庫存good_inventint(11)錄入時間create_timebigint(20)商品信息修改時間update_timebigint(20)寄養(yǎng)商品評論表(order_comments)。用于存儲寄養(yǎng)商品評論的信息,其中字段名包括評論編號、訂單編號、商品編號、用戶編號、評價內(nèi)容、評價時間等基本信息。寄養(yǎng)商品評論表的數(shù)據(jù)表結構如表4-3寄養(yǎng)商品評論表(order_comments)所示。表4-3寄養(yǎng)商品評論表(order_comments)名稱字段字段類型(長度)是否為空備注評論編號cidint(11)notnull主鍵(數(shù)據(jù)庫設置自動遞增)訂單編號order_idint(11)商品編號good_idint(11)用戶編號uidint(11)評價內(nèi)容comment_contenttext(0)評價時間create_timebigint(20)評價修改時間update_timebigint(20)訂單信息表(orders)。用于存儲訂單的信息,其中字段名包括訂單編號、訂單號、下單時間、訂單狀態(tài)、訂單總價、購買的數(shù)量、商品編號、下單的用戶等基本信息。訂單信息表的數(shù)據(jù)表結構如表4-4訂單信息表(orders)所示。表4-4訂單信息表(orders)名稱字段字段類型(長度)是否為空備注訂單編號oidint(11)notnull主鍵(數(shù)據(jù)庫設置自動遞增)訂單號order_novarchar(64)下單時間create_timebigint(20)訂單狀態(tài)statustinyint(4)1.表示未支付;2.表示已支付;3.表示已寄養(yǎng);4.表示已完成;5.表示已取消訂單總價order_priceint(11)購買的數(shù)量select_countint(11)商品編號good_idint(11)下單的用戶uidint(11)待領養(yǎng)寵物信息表(pet_info)。用于存儲待領養(yǎng)寵物信息,其中字段名包括寵物編號、寵物照片、寵物品種、寵物年齡、寵物出生地、寵物性別、發(fā)布時間、寵物詳情、寵物疫苗情況、寵物狀態(tài)等基本信息。待領養(yǎng)寵物信息表的數(shù)據(jù)表結構如表4-5待領養(yǎng)寵物信息表(pet_info)所示。表4-5待領養(yǎng)寵物信息表(pet_info)名稱字段字段類型(長度)是否為空備注寵物編號pidint(11)notnull主鍵(數(shù)據(jù)庫設置自動遞增)寵物照片pet_avatarvarchar(128)寵物品種pet_kindvarchar(50)寵物年齡pet_ageint(11)寵物出生地pet_cityvarchar(20)寵物性別pet_gendertinyint(4)0.公;1.母發(fā)布時間create_timebigint(20)寵物詳情commentstext(0)寵物疫苗情況pet_vaccinevarchar(100)寵物狀態(tài)statustinyint(4)0.未領養(yǎng);1.已領養(yǎng)用戶信息表(user_info)。用于存儲用戶信息,其中字段名包括用戶編號、用戶名、手機號、郵箱、用戶賬戶密碼、用戶類型、賬戶創(chuàng)建時間、賬戶信息更新時間等基本信息。用戶信息表的數(shù)據(jù)表結構如表4-6用戶信息表(user_info)所示。表4-6用戶信息表(user_info)名稱字段字段類型(長度)是否為空備注用戶編號uidint(11)notnull主鍵(數(shù)據(jù)庫設置自動遞增)用戶名user_namevarcha(50)手機號phonevarcha(13)郵箱emailvarcha(50)用戶賬戶密碼passwordvarcha(64)用戶類型managertinyint(4)賬戶創(chuàng)建時間create_timebigint(20)賬戶信息更新時間update_timebigint(20)寄養(yǎng)工作表(work_info)。用于存儲寄養(yǎng)工作信息,其中寄養(yǎng)工作表包含工作編號、寵物昵稱、工作人員姓名、用戶編號、工作照片、時間、工作留言等字段。寄養(yǎng)工作表的數(shù)據(jù)表結構如表4-7寄養(yǎng)工作表(work_info)所示。表4-7寄養(yǎng)工作表(work_info)名稱字段字段類型(長度)是否為空備注工作編號widint(30)notnull主鍵(數(shù)據(jù)庫設置自動遞增)寵物昵稱pnamevarchar(225)工作人員姓名user_namevarchar(50)用戶編號uidint(11)內(nèi)容contentvarchar(255)工作照片photovarchar(255)工作時間timedatetime(0)工作留言wcommentvarchar(255)留言時間create_timebigint(20)購物車表(shop_car)。用于臨時存儲用戶添加的寄養(yǎng)商品,其字段設計包括購物車編號、商品編號、購買的數(shù)量、購買的用戶等字段。購物車表的數(shù)據(jù)表結構如表4-8購物車表(shop_car)所示。表4-8購物車表(shop_car)名稱字段字段類型(長度)是否為空備注購物車編號sidint(11)notnull主鍵(數(shù)據(jù)庫設置自動遞增)商品編號good_idint(11)購買的數(shù)量select_countint(11)購買的用戶uidint(11)notnull領養(yǎng)寵物信息表(adopt_info)。用于用戶在進行寵物領養(yǎng)操作時,所存儲的領養(yǎng)寵物的信息,其中字段名包括寵物領養(yǎng)編號、寵物編號、會員編號、領養(yǎng)時間等基本信息。領養(yǎng)寵物信息表的數(shù)據(jù)表結構如表4-9領養(yǎng)寵物信息表(adopt_info)所示。表4-9領養(yǎng)寵物信息表(adopt_info)名稱字段字段類型(長度)是否為空備注領養(yǎng)編號aidint(11)notnull主鍵(數(shù)據(jù)庫設置自動遞增)寵物編號pidint(11)會員編號uidint(11)領養(yǎng)時間adopt_timebigint(20)4.5本章小結第四章節(jié)首先根據(jù)系統(tǒng)的總體需求以及系統(tǒng)的重點功能為重點研究對象,整體上對功能結構設計、架構設計和數(shù)據(jù)庫設計三個主要設計點,得出系統(tǒng)的進一步設計的目標與方向。系統(tǒng)詳細設計與實現(xiàn)5.1系統(tǒng)環(huán)境5.1.1系統(tǒng)軟件配置環(huán)境系統(tǒng)采用IntelliJIDEA2019.2.4x64作為開發(fā)平臺,配置JDK1.8保證Java運行環(huán)境,配置Tomcat9.0.8作為Web服務器,選擇maven的項目結構方便進行項目構建,依賴管理以及倉庫管理等工作。而把MysQL5.6作為數(shù)據(jù)庫存儲數(shù)據(jù),并采用Navicat12forMySQL作為管理數(shù)據(jù)庫,并通過界面來操作數(shù)據(jù)庫的工具,以達到改善工作流程并提高工作效率的目的[15]。系統(tǒng)開發(fā)軟件環(huán)境要求如表5-1系統(tǒng)開發(fā)軟件環(huán)境表所示。表5-1系統(tǒng)開發(fā)軟件環(huán)境表環(huán)境項環(huán)境參數(shù)JDK版本JDK1.8數(shù)據(jù)庫Mysql5.6Web服務器Tomcat9.0.8瀏覽器IE7/8、chrome5.1.2系統(tǒng)硬件配置環(huán)境系統(tǒng)硬件配置要求如表5-2系統(tǒng)硬件配置表所示。表5-2系統(tǒng)硬件配置表指標項配置值CPUIntel(R)Core(TM)i5-6500UCPU@2.30GHz內(nèi)存4GB操作系統(tǒng)Windows10硬盤容量120G5.2寄養(yǎng)商品管理模塊設計與實現(xiàn)通過對普通用戶對寵物寄養(yǎng)的需求進行分析可知,現(xiàn)在對面消費者而言最需要的是對寵物寄養(yǎng)需要的住址和食物的自主選擇性,而寄養(yǎng)商品管理模塊是用來管理寵物寄養(yǎng)系統(tǒng)中交易的寄養(yǎng)商品的。寄養(yǎng)商品包括與寵物相關的各種寄養(yǎng)房間、三餐糧食等。系統(tǒng)工作人員在后臺以列表的形式管理寄養(yǎng)商品,包括商品的圖片、數(shù)量、價格和描述等信息。寄養(yǎng)商品管理模塊包括新增商品、編輯商品、刪除商品、查詢商品等功能。寄養(yǎng)商品模塊僅限于工作人員使用,普通用戶不可見該模塊,該模塊主要包括添加寄養(yǎng)商品,其功能模塊流程圖如圖5-1所示,具體流程分析如下所示:系統(tǒng)員工通過電腦后臺管理系統(tǒng),通過寵物寄養(yǎng)清單的鏈接,點擊“添加”鍵,進入新的寄養(yǎng)欄,填寫相應的信息;寄養(yǎng)商品信息填寫正確,即可完成上架寄養(yǎng)商品,上架后的寄養(yǎng)商品將展現(xiàn)于PC用戶端的寄養(yǎng)商品中所對應的詳情界面中。圖5-1寄養(yǎng)商品管理模塊流程圖一般用戶在貨架上放置物品是可以進行寵物寄養(yǎng)的必要條件,而在貨架上放置物品,則可以讓系統(tǒng)工作人員更加方便地操作,并且可以永久保存寵物的信息。本系統(tǒng)使用了layui的動態(tài)數(shù)據(jù)表格,可以進行表格屬性名的選擇查看。在刪除方面,可以選擇單個的刪除,也可以進行的批量刪除。實現(xiàn)寄養(yǎng)商品模塊需要分別建立寄養(yǎng)商品信息的相應controller類,通過控制類創(chuàng)建的實體類,調(diào)用service層的相應方法,服務層的Service用于從GoodsController發(fā)送的請求,然后利用GoodsService中的方法進行特定的業(yè)務邏輯處理,來進行數(shù)據(jù)的增刪改查的操作,最終保存寵物寄養(yǎng)商品數(shù)據(jù)到數(shù)據(jù)庫同時返回操作結果,最終實現(xiàn)用戶的請求。該模塊的相關類圖如圖5-2所示。圖5-2寄養(yǎng)商品管理模塊類圖寄養(yǎng)商品功能模塊中寄養(yǎng)商品上架的代碼的實現(xiàn)對于系統(tǒng)的進行有著尤為重要的地位,其中controller層部分核心代碼如GoodsController.java所示,而價格從數(shù)字變成相應統(tǒng)一價格標簽的代碼如public.js所示。GoodsController.java@PostMapping("/save")

publicObjectsaveGoods(Goodsgoods){

if(StrUtil.isBlank(goods.getGoodImg())){

thrownewBusinessException("請上傳商品圖片");}

if(goods.getGoodPrice()<=0){

thrownewBusinessException("非法商品價格");}

if(goods.getGoodInvent()==null){

thrownewBusinessException("請輸入商品數(shù)量");}

if(goods.getGoodInvent()<=0){

thrownewBusinessException("商品數(shù)量必須大于1");}

GoodssaveGood=goodsService.saveGood(goods);

if(Optional.ofNullable(saveGood).isPresent()){

returnResponseResult.ok();}

thrownewBusinessException("商品錄入失敗,請重試");}public.jsfunctionconvertIntToPrice(number){

letdecimal=number%100

letinteger=number/100

integer=parseInt(integer)

if(decimal<10){

return`${integer}.0${decimal}`}

return`${integer}.${decimal}`}通過對代碼的詳細設計與編寫,得出添加寄養(yǎng)商品管理界面如圖5-3所示。圖5-3寄養(yǎng)商品管理界面通過后臺查詢寄養(yǎng)商品信息,以jsion形式將數(shù)據(jù)傳送到PC用戶端,將數(shù)據(jù)顯示于PC用戶端中首頁的對應寄養(yǎng)寵物內(nèi)的寄養(yǎng)商品信息列表中,寄養(yǎng)商品信息列表頁面如圖5-4所示,而寄養(yǎng)商品詳情界面如圖5-5所示。圖5-4用戶端寄養(yǎng)商品信息列表頁面圖5-5寄養(yǎng)商品詳情頁面5.3寵物寄養(yǎng)模塊設計與實現(xiàn)寵物寄養(yǎng)模塊是本系統(tǒng)中最為重要的一個模塊,而本模塊又涵蓋了購物車模塊、訂單管理模塊和支付模塊。寵物寄養(yǎng)模模塊是由普通用戶和系統(tǒng)工作人員共同使用的功能模塊,其中查看訂單列表詳情、修改訂單狀態(tài)是由系統(tǒng)工作人員進行的,修改訂單狀態(tài)以用戶已經(jīng)成功支付后默認生成為已支付和工作人員將訂單中需要寄養(yǎng)的寵物寄養(yǎng)時將訂單修改成已寄養(yǎng)狀態(tài),且查看訂單包含有查看訂單日交易量折線圖與查看訂單狀態(tài)分布圖;而加入購物車、創(chuàng)建訂單、寵物寄養(yǎng)信息填寫和訂單評價是由普通用戶進行的,在用戶端寄養(yǎng)完成后可以對本次訂單寄養(yǎng)商品進行評價,且可以在商品詳情下可以顯示給其他用戶參考查看。寵物寄養(yǎng)模塊功能包含添加購物車、創(chuàng)建訂單、填寫寵物寄養(yǎng)信息、訂單結算、查看寵物寄養(yǎng)信息、對訂單的狀態(tài)修改、訂單評價七大部分,其功能模塊流程圖如圖5-5所示,具體流程分析如下所示:寵物主人登錄寵物寄養(yǎng)系統(tǒng),可選擇性地瀏覽相應寄養(yǎng)商品列表。選擇所想寄養(yǎng)商品,點擊進入寄養(yǎng)商品界面,此處可瀏覽寄養(yǎng)商品概況;點擊開寄養(yǎng)商品,進入寄養(yǎng)商品詳情界面,選商品的數(shù)量,點擊加入購物車或者立即購買,加入購物車的可以看到購物車里的商品,可以刪除購物車的商品或是修改數(shù)量,再進行結算;進入結算界面后,要填寫寵物寄養(yǎng)信息,系統(tǒng)判斷填寫正確后,點擊結算;系統(tǒng)自動生成付款碼,用戶進行支付后,跳轉(zhuǎn)訂單詳情,也可以查看已寄養(yǎng)寵物的信息,而工作人員可以獲取到訂單信息和寵物寄養(yǎng)信息并可以修改訂單的狀態(tài)。圖5-6寵物寄養(yǎng)功能流程圖其用戶端功能模塊時序圖如圖5-7所示:圖5-7用戶端寵物寄養(yǎng)功能時序圖該模塊的相關類圖如圖5-8所示:圖5-8寵物寄養(yǎng)模塊類圖在寄養(yǎng)寵物功能時,后端三個層級設計如下:控制層:ShopCarController收到一個視圖層的請求,首先通過保存ShopCar的方式添加到購物車中,隨后向ShopCarServiceImpl發(fā)送該請求,并且將ShopCarService的返回結果打包并傳送到前端。同樣,OrdersController和AddrListController通過submitOrder、submitImmediately以及saveAddr的方式來處理這個命令。然后再通過OrderCommentController接收視圖層傳遞的請求,先經(jīng)過saveOrderComment的方法進行訂單評論的操作。服務層:服務層的服務是用來從OrdersController發(fā)出的要求在OrdersServiceImpl中進行特定的業(yè)務邏輯處理。在這個模塊中,要完成寄養(yǎng)的功能,所要存取的數(shù)據(jù)庫表格如下:在OrdersServiceImpl實例化時,輸入相應的映射,然后調(diào)用相應的Mapper界面中的方法,把插入成功的信息發(fā)送到OrdersController。加入購物車和訂單評論的操作同理。數(shù)據(jù)訪問層:數(shù)據(jù)Dao層的映射接口包含了不同的數(shù)據(jù)庫表操作方法,在實體層中,ShopCar、PetrList、OrderComments、數(shù)據(jù)庫表中的成員變量一一對應,并使用對應的Example實例函數(shù)來設置SQL語句,當MyBatis用MyBatis反向工具生成映射實體和對應的ExampleExample函數(shù)。用戶登錄后,通過判斷則將用戶信息和相對應的用戶信息存入到JavaScript的Session中,在通過返回一個json對象給前端進行首頁的跳轉(zhuǎn)操作,再通過JSONObject創(chuàng)建一個對象,把購物車的值通過put的方法存儲進去,返回到前端,寄養(yǎng)寵物模塊的數(shù)據(jù)處理主要放于前端處理,后臺接口負責數(shù)據(jù)的查詢與添加操作,寄養(yǎng)寵物訂單核心代碼如OrdersController.java代碼所示:OrdersController.java@PostMapping("/submit")

publicObjectsubmitOrder(HttpServletRequestrequest,@RequestParamStringsid,@RequestParamStringsessionId){

UserInfouserInfo=accountValidUtil.getLoginUser(request,sessionId);

List<Orders>orders=ordersService.batchSaveOrder(sid,userInfo.getUid());

List<Integer>idList=customArrayUtil.convertStrToList(sid);

intdeleteResult=0;

for(Integerid:idList){

deleteResult+=shopCarService.deleteShopCar(id);}

if(idList.size()!=0&&deleteResult==idList.size()*HttpStatus.HTTP_OK){

returnResponseResult.ok("下單成功,前往支付!",orders);}

thrownewBusinessException("訂單結算失敗,請重新頁面后重試!");}

@PostMapping("/submit/immediately")

@SuppressWarnings("unchecked")

publicObjectsubmitImmediately(HttpServletRequestrequest,@RequestParamStringsessionId,@RequestParamStringorderJson){

UserInfologinUser=accountValidUtil.getLoginUser(request,sessionId);

List<JSONObject>orders=JSONObject.parseObject(orderJson,List.class);

StringorderNo=IdUtil.simpleUUID();

longnow=System.currentTimeMillis();

intresult=0;

intorderPrice=0;

intcarResult=0;

for(JSONObjectobj:orders){

Ordersorder=newOrders()

.setUid(loginUser.getUid())

.setGoodId(obj.getInteger("goodId"))

.setOrderPrice(obj.getInteger("goodPrice"))

.setSelectCount(obj.getInteger("selectCount"))

.setOrderNo(orderNo)

.setStatus(Orders.NOT_PAY)

.setCreateTime(now);

OrderssaveOrder=ordersService.saveOrder(order);

if(Optional.ofNullable(saveOrder).isPresent()){

result++;

orderPrice+=order.getOrderPrice()*order.getSelectCount();

carResult+=shopCarService.deleteShopCar(obj.getInteger("sid"));

}}if(result==orders.size()&&carResult==orders.size()*HttpStatus.HTTP_OK){

JSONObjectreturnObj=newJSONObject();

returnObj.put("orderNo",orderNo);

returnObj.put("orderPrice",orderPrice);

returnResponseResult.ok(returnObj);}

thrownewBusinessException("訂單提交失敗");}對于用戶寄養(yǎng)結束時,是通過session傳值給前端賦值在用戶ID和寄養(yǎng)商品ID上,進行一個添加評論的操作,將數(shù)據(jù)傳輸?shù)胶笈_,其中評論功能的核心數(shù)據(jù)處理代碼如OrderCommentsController.java代碼所示。OrderCommentsController.java@PostMapping("/save")

publicObjectsaveOrderComment(HttpServletRequestrequest,@RequestParamStringsessionId,

OrderCommentsorderComments){

UserInfologinUser=accountValidUtil.getLoginUser(request,sessionId);

Goodsgoods=goodsService.queryByGid(orderComments.getGoodId());

if(!Optional.ofNullable(goods).isPresent()){

thrownewBusinessException("未知的商品");}

orderComments.setUid(loginUser.getUid());

OrderCommentssaveComment=orderCommentsService.saveOrderComment(orderComments);

if(Optional.ofNullable(saveComment).isPresent()){

returnResponseResult.ok("評價成功!",StrUtil.SPACE.trim());}

thrownewBusinessException("評價失敗!");}寵物寄養(yǎng)是本系統(tǒng)的重點功能,同時也是本系統(tǒng)開發(fā)的初衷。圖5-9顯示了用戶購物車的界面,在這個表單界面中,可以進行結算和刪除寄養(yǎng)商品的操作。圖5-9購物車頁面在用戶訂單結算界面中,用戶需要填寫寵物寄養(yǎng)信息,包括聯(lián)系人、聯(lián)系電話、寄養(yǎng)寵物、預約時間等詳細信息,如圖5-10所示。圖5-10確認訂單信息界面點擊提交訂單后,跳轉(zhuǎn)至支付頁面,付款成功后即成功下單,如圖5-11所示。圖5-11支付頁面用戶下單并付款成功后即可在管理員的訂單列表中顯示圖5-12所示。此時訂單的狀態(tài)是根據(jù)系統(tǒng)使用者的實際操作而自動修改為已支付或未支付,而隨后訂單發(fā)生狀態(tài)變化為寄養(yǎng)或已完成時,可以手動修改,還可以查看訂單的分布圖。圖5-12管理端訂單頁面用戶支付成功后,自動跳轉(zhuǎn)至我的訂單,查看相關的訂單信息和寵物寄養(yǎng)信息,如圖5-13所示。在頁面里可以進行訂單評價的操作,評價后的信息可以在寄養(yǎng)商品的詳情界面下給其他用戶參考,如圖5-14所示。圖5-13訂單信息相關頁面圖5-14用戶評價頁面5.4寄養(yǎng)工作管理模塊設計與實現(xiàn)寄養(yǎng)工作管理模塊的功能由普通用戶和系統(tǒng)工作人員共同使用,該模塊包含寵物寄養(yǎng)工作管理與對寄養(yǎng)工作留言兩大部分。其寵物寄養(yǎng)工作管理只能是系統(tǒng)的工作人員通過PC后臺管理系統(tǒng)使用,包括上傳寵物寄養(yǎng)工作與查看寄養(yǎng)工作留言主要兩大功能。而普通用戶可以查看自己寵物寄養(yǎng)的工作記錄和對寄養(yǎng)工作留言。其功能模塊流程圖如圖5-15所示,具體流程分析如下所示:系統(tǒng)工作人員在PC后臺管理系統(tǒng)中從寵物寄養(yǎng)信息列表鏈接進入列表顯示界面,查看寄養(yǎng)寵物信息;系統(tǒng)工作人員在寵物寄養(yǎng)信息頁面里選擇需要發(fā)布寄養(yǎng)工作記錄的寵物信息,點擊添加按鈕,填寫寄養(yǎng)工作相關信息;系統(tǒng)工作人員寄養(yǎng)工作信息格式填寫正確,即可完成發(fā)布寄養(yǎng)信息,發(fā)布成功后將展現(xiàn)于PC用戶端的寄養(yǎng)工作中所對應的詳情界面中;用戶在寵物寄養(yǎng)工作查看頁面下,查看并選擇需要留言寄養(yǎng)工作記錄,點擊添加留言按鈕,填寫留言信息;用戶書寫留言填寫格式正確,點擊確定按鈕,即可完成留言,發(fā)布成功后將展現(xiàn)于PC用戶端和PC后臺管理端的寄養(yǎng)工作中所對應的詳情界面中。圖5-15寄養(yǎng)工作管理功能流程圖在寄養(yǎng)工作功能時,后端三個層級設計如下:控制層:WorkInfoController通過一個saveWorkInfo的方式來處理發(fā)布寄養(yǎng)任務,隨后向ServiceWorkInfoService發(fā)送該請求,再將該請求和該參數(shù)一起傳送到該服務層,并將該返回的結果打包并傳送到該前端。服務層:服務層的Service用于從WorkInfoController發(fā)出的要求中接受一個包在WorkInfoServiceImpl中的特定業(yè)務邏輯。在此模塊中,要完成寄養(yǎng)任務,必須要存取的資料庫表格:在WorkInfoServiceImpl實例化時,輸入相應的映射,然后調(diào)用相應Mapper界面中的方法,把插入成功的信息發(fā)送到WorkInfoController。數(shù)據(jù)訪問層:在數(shù)據(jù)Dao層中的映射界面包括了多種操作數(shù)據(jù)庫表格的方式,實體層中的WorkInfo與數(shù)據(jù)庫中的寄養(yǎng)工作表對應,成員變量與數(shù)據(jù)庫表一一對應,相應的Example實例函數(shù)用于設定SQL聲明的條件,映射、實體類和相應的Example均由MyBatis反向工具產(chǎn)生。寄養(yǎng)工作管理模塊的類圖如圖5-16所示。圖5-16寄養(yǎng)工作管理模塊類圖本系統(tǒng)按照類圖進行了具體的流程設計,并通過對寄養(yǎng)工作管理模塊進行了相應的編碼,用戶在登陸時獲取到Uid的數(shù)據(jù)再賦值到session傳值,使得發(fā)布寄養(yǎng)工作時可以讓寵物寄養(yǎng)信息的數(shù)據(jù)與寄養(yǎng)工作的數(shù)據(jù)所關聯(lián),寄養(yǎng)工作留言也同理。在寄養(yǎng)工作管理模塊的數(shù)據(jù)中,操作數(shù)據(jù)庫的特定核心代碼如WorkInfoController.java所示:WorkInfoController.java@PostMapping("/save")

publicObjectsaveWorkInfo(WorkInfoworkInfo,HttpServletRequestrequest,@RequestParamStringsessionId,HttpSessionsession){

UserInfologinUser=accountValidUtil.getLoginUser(request,sessionId);

AddrListaddrList=addrListService.queryByAddr(loginUser.getUid());

UserInfouserInfo=userInfoService.queryByUid(loginUser.getUid());

session.setAttribute("username",userInfo.getUserName());

session.setAttribute("pname",addrList.getPname());

session.setAttribute("uid",addrList.getUid());

if(StrUtil.isBlank(workInfo.getPname())){

thrownewBusinessException("請?zhí)顚懠酿B(yǎng)寵物昵稱");}

if(workInfo.getUid()==null){

thrownewBusinessException("請?zhí)顚懹脩艟幪?);}

if(StrUtil.isBlank(workInfo.getContent())){

thrownewBusinessException("請?zhí)顚懝ぷ鲀?nèi)容詳情");}

if(StrUtil.isBlank(workInfo.getPhoto())){

thrownewBusinessException("請輸入工作記錄照片");}

workInfo.setTime(newDate());

WorkInfosaveWorkInfo=workInfoService.saveWorkInfo(workInfo);

if(Optional.ofNullable(saveWorkInfo).isPresent()){

returnResponseResult.ok();}

thrownewBusinessException("工作記錄添加失敗,請重試");}通過代碼的詳細編寫,實現(xiàn)了該模塊的核心功能,其中PC后臺管理端的寵物寄養(yǎng)信息列表界面如圖5-17所示、PC后臺管理端的寄養(yǎng)工作列表界面如圖5-18所示、用戶端寄養(yǎng)工作界面如圖5-19所示。圖5-17管理端寵物寄養(yǎng)信息管理頁面圖5-18管理端寄養(yǎng)工作管理頁面圖5-19用戶端寄養(yǎng)工作界面5.5寵物領養(yǎng)模塊設計與實現(xiàn)寵物領養(yǎng)子

溫馨提示

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

評論

0/150

提交評論