版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
i摘要隨著經(jīng)濟(jì)發(fā)展和人民生活水平的提高,兒童的零花錢不斷增加。兒童年齡小,容易受到周圍不良風(fēng)氣的影響,如何理性的管理零花錢,是家長(zhǎng)比較關(guān)心的話題。本文介紹的兒童零花錢管理系統(tǒng),從花錢,存錢,捐款三方面引導(dǎo)兒童正確管理零花錢,鼓勵(lì)兒童儲(chǔ)蓄,從而提高兒童的金錢管理能力,培養(yǎng)兒童財(cái)商,提高理財(cái)觀念,為以后的人生發(fā)展奠定基礎(chǔ),同時(shí)彌補(bǔ)了傳統(tǒng)手工記錄零花錢明細(xì)的不足。本系統(tǒng)采用JavaEE平臺(tái)進(jìn)行架構(gòu)設(shè)計(jì),以Tomcat應(yīng)用服務(wù)器作為web容器。服務(wù)器端采用SSM(SpringMVC+Spring+MyBatis)框架進(jìn)行開發(fā),客戶端采用EasyUI+css+js+Bootstrap框架完成了頁(yè)面設(shè)計(jì),使用JSP技術(shù)完成前后端的交互。以Mysql為數(shù)據(jù)庫(kù),完成數(shù)據(jù)的存儲(chǔ)和管理操作。課題主要從系統(tǒng)的需求分析、總體設(shè)計(jì)、系統(tǒng)詳細(xì)設(shè)計(jì)和實(shí)現(xiàn)完成了管理員模塊,家長(zhǎng)模塊和兒童模塊三大模塊的設(shè)計(jì)。最后通過(guò)系統(tǒng)測(cè)試完成了本系統(tǒng)。本系統(tǒng)適用于9-13歲兒童。關(guān)鍵詞:零花錢管理;財(cái)商;SSM框架;JSP技術(shù)
引言隨著經(jīng)濟(jì)發(fā)展和人民生活水平的提高,兒童的零花錢不斷增加。兒童是家庭的核心,家長(zhǎng)非常重視兒童,希望他們能全面發(fā)展。金錢管理能力也是兒童全面發(fā)展內(nèi)容的一部分。據(jù)《中國(guó)少兒財(cái)商調(diào)研》統(tǒng)計(jì),75.9%的兒童擁有零花錢,40%的兒童每月零花錢在50元以下,20%的兒童每月零花錢在50-100元之間,15.9%的兒童零花錢在百元以上,有的甚至超過(guò)了千元、萬(wàn)元。在調(diào)研中大部分兒童對(duì)自己的零花錢沒(méi)有規(guī)劃,一般會(huì)將自己的零花錢花光,甚至負(fù)債。中國(guó)兒童的經(jīng)濟(jì)來(lái)源是原來(lái)的兩倍,而花銷將近是原來(lái)的三倍。從兒童對(duì)零花錢的處理方式可以看出兒童對(duì)零花錢管理能力存在問(wèn)題。再加上兒童對(duì)于金錢沒(méi)有正確的認(rèn)知,缺乏財(cái)商教育,近年來(lái),兒童打賞主播,花巨額充值游戲平臺(tái),購(gòu)買奢侈品的現(xiàn)象多有發(fā)生。在信息化技術(shù)高速發(fā)展的今天,如何利用信息技術(shù)幫助兒童樹立正確的金錢觀,提高金錢管理能力顯得尤為重要。兒童零花錢管理系統(tǒng)能滿足上述需求。本系統(tǒng)能改善傳統(tǒng)手工記錄零花錢不易保存、查找速度慢的弊端,同時(shí)模擬網(wǎng)上銀行,設(shè)置利息,讓兒童存錢到銀行賬戶,從而養(yǎng)成儲(chǔ)蓄的習(xí)慣,設(shè)置玩具圖片讓兒童挑選自己感興趣的玩具,完成存儲(chǔ)目標(biāo)時(shí),家長(zhǎng)對(duì)其進(jìn)行獎(jiǎng)勵(lì)。系統(tǒng)讓家長(zhǎng)全面參與進(jìn)來(lái),不僅能讓兒童受到財(cái)商教育而且能提高兒童的金錢管理能力,促進(jìn)兒童全面發(fā)展。相關(guān)技術(shù)概述開發(fā)工具介紹MySqlMySql是一個(gè)開源免費(fèi)的關(guān)系型數(shù)據(jù)庫(kù),是一個(gè)真正的多用戶、多線程的SQL數(shù)據(jù)庫(kù)服務(wù)器,它是一個(gè)客戶機(jī)/服務(wù)器結(jié)構(gòu)的實(shí)現(xiàn)。它具有體積小,成本低,運(yùn)行速度快,性能穩(wěn)定等優(yōu)點(diǎn)。主要適用于中小型企業(yè)領(lǐng)域,隨著它的不斷成熟,也逐漸適用于大型企業(yè)領(lǐng)域。TomcatTomcat是一個(gè)開源的web服務(wù)器,它是Apache基金會(huì)下的一個(gè)項(xiàng)目。它集成了Servlet和JSP規(guī)范。因其擁有先進(jìn)的技術(shù)和穩(wěn)定的性能,因而得到了許多軟件按開發(fā)商的認(rèn)可,成為目前比較流行的Web應(yīng)用服務(wù)器。它作為當(dāng)下較流行的輕量級(jí)容器,是開發(fā)、調(diào)試JSP頁(yè)面的首選服務(wù)器。系統(tǒng)主要技術(shù)介紹JSP技術(shù)JSP即JavaServerPages,是由SunMicrosystems公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。JSP是一個(gè)簡(jiǎn)化的Servlet。其工作原理如下:當(dāng)客戶端發(fā)出http請(qǐng)求時(shí),JSP引擎收到請(qǐng)求之后會(huì)對(duì)其進(jìn)行編譯和運(yùn)行并返回處理結(jié)果。具體步驟為:第一、服務(wù)器解析URL,查找JSP文件資源。第二、將JSP文件轉(zhuǎn)化為.java文件。第三、將.java文件進(jìn)行編譯,生成.class文件。第四、由字節(jié)碼文件給客戶端做出響應(yīng)。SSM框架SSM框架是由Spring、SpringMVC和MyBatis三個(gè)框架整合而成。主要開發(fā)web應(yīng)用程序,是典型的MVC模式。(1)Spring框架Spring是一個(gè)輕量級(jí)容器框架,具有控制反轉(zhuǎn)(Ioc)和面向切面編程(AOP)的特性。使用依賴注入和面向切面編程降低了業(yè)務(wù)組件間的耦合程度,降低程序間的依賴關(guān)系,并增強(qiáng)系統(tǒng)的可伸縮性。Spring主要負(fù)責(zé)處理業(yè)務(wù)之間的邏輯關(guān)系、安全管理和事物管理;可以整合很多第三方框架和類庫(kù),降低框架的使用難度,主要用于簡(jiǎn)化java開發(fā)。(2)SpringMVC框架SpringMVC是一種基于java的實(shí)現(xiàn)MVC設(shè)計(jì)模型的請(qǐng)求驅(qū)動(dòng)類型的web框架。SpringMVC是Spring框架的一部分,他通過(guò)注解方式,讓開發(fā)人員不需要再實(shí)現(xiàn)接口就可以讓java類成為處理請(qǐng)求的控制器。簡(jiǎn)化了代碼,提高了開發(fā)效率。他是目前主流的MVC框架之一。其工作原理如下:當(dāng)客戶端發(fā)出請(qǐng)求后,分發(fā)器(DispacherServlet)接收該請(qǐng)求,并根據(jù)其路徑查找映射(HandleMapping),將請(qǐng)求發(fā)給控制器(Controller)。控制器調(diào)用service處理請(qǐng)求,并在完成時(shí)返回ModelAndView(模型視圖層),通過(guò)(視圖解析器)ViewResolver將找到的的ModelAndView指定的視圖顯示給分發(fā)器(DispacherServlet),最后視圖再將結(jié)果響應(yīng)給客戶。SpringMVC的工作圖,如圖1所示。圖1SpringMVC工作圖(3)MyBatis框架MyBatis是一個(gè)優(yōu)秀的半自動(dòng)化數(shù)據(jù)庫(kù)持久性框架,它不僅支持?jǐn)?shù)據(jù)庫(kù)的各種增刪改查操作還支持存儲(chǔ)過(guò)程和聯(lián)合查詢。它實(shí)現(xiàn)了對(duì)JDBC的封裝,使開發(fā)人員只需要注重sql語(yǔ)句本身,簡(jiǎn)化了開發(fā)。MyBatis具有簡(jiǎn)易性,使用時(shí),只需要導(dǎo)入jar包,編寫配置文件和映射文件就可以實(shí)現(xiàn)接口和java對(duì)象的映射記錄,開發(fā)人員可以自己在映射文件里實(shí)現(xiàn)對(duì)sql語(yǔ)句的管理和優(yōu)化,同時(shí)避免幾乎所有的JDBC代碼需手動(dòng)設(shè)置參數(shù)和獲取結(jié)果集的缺點(diǎn)。其優(yōu)點(diǎn)如下:1)MyBatis體積比較小簡(jiǎn)單易用。不需要依賴任何的第三方軟件,開發(fā)者只需要導(dǎo)入jar文件、配置文件和映射文件就可以實(shí)現(xiàn)。2)MyBatis不會(huì)對(duì)現(xiàn)有的應(yīng)用程序和數(shù)據(jù)庫(kù)產(chǎn)生影響,它只需要開發(fā)者把sql語(yǔ)句寫在xml文件里,就可以實(shí)現(xiàn)各種操作數(shù)據(jù)庫(kù)的功能。3)提供動(dòng)態(tài)語(yǔ)句功能,提供xml標(biāo)簽。Echarts組件Echarts是林峰可視化團(tuán)隊(duì)發(fā)布的用于生成各類可視化圖表的圖形報(bào)表技術(shù)。Echarts組件有以下幾種特點(diǎn):(1)豐富的圖表Echarts有非常齊全的圖表資源,比如折線圖,餅圖等。(2)移動(dòng)端優(yōu)化移動(dòng)端進(jìn)行的優(yōu)化主要體現(xiàn)于:用手指就可以實(shí)現(xiàn)圖形在坐標(biāo)系中的平移和縮放。(3)動(dòng)態(tài)數(shù)據(jù)Echarts隨著兩數(shù)據(jù)之間的差異變化而產(chǎn)生動(dòng)態(tài)變化。JQueryEasyUI框架JQueryEasyUI是一款基于JQuery插件集合的前臺(tái)界面框架,該框架可以簡(jiǎn)化界面開發(fā),使開發(fā)人員不必過(guò)多了解JavaScript和CSS就可以開發(fā)出功能強(qiáng)大的界面。它提供了強(qiáng)大的數(shù)據(jù)網(wǎng)格,樹型表格,面板等??梢詽M足開發(fā)者不同功能的喜好。系統(tǒng)需求分析系統(tǒng)可行性分析技術(shù)可行性分析技術(shù)可行性分析主要通過(guò)開發(fā)技術(shù)層面來(lái)判定系統(tǒng)的功能目標(biāo)能否達(dá)到要求。在開發(fā)技術(shù)方面本系統(tǒng)采用目前比較成熟的SSM框架,java語(yǔ)言,Mysql數(shù)據(jù)庫(kù)等,SSM框架保障了系統(tǒng)運(yùn)行的基礎(chǔ),具有高效、穩(wěn)定和擴(kuò)展的特性。Java語(yǔ)言也是作為軟件開發(fā)的主流語(yǔ)言。Mysql體積小,速度快,是一款比較流行的關(guān)系型數(shù)據(jù)庫(kù),深受廣大開發(fā)人員的喜愛(ài)。兒童零花錢管理系統(tǒng)所選擇的開發(fā)技術(shù)和框架等都是比較流行的,提高了系統(tǒng)的可維護(hù)性和擴(kuò)展性。因此本系統(tǒng)在技術(shù)方面是可行的。經(jīng)濟(jì)可行性經(jīng)濟(jì)可行性主要從搭建成本進(jìn)行分析。兒童零花錢管理系統(tǒng)從開發(fā)環(huán)境來(lái)看,只需要有一臺(tái)電腦可以流暢運(yùn)行瀏覽器即可,從開發(fā)工具方面來(lái)看,系統(tǒng)所使用的開發(fā)工具都是開源免費(fèi)的。而且整體設(shè)計(jì)并不需要大量的人力,周期也比較短,開發(fā)難度也相對(duì)比較低,綜合來(lái)說(shuō)搭建成本較低。因此本系統(tǒng)在經(jīng)濟(jì)層面是可行的。操作可行性該系統(tǒng)使用PC端開發(fā),用戶只需要一臺(tái)電腦,通過(guò)電腦上的瀏覽器就可以訪問(wèn)本系統(tǒng)??紤]到兒童這一特殊群體,系統(tǒng)設(shè)置了自動(dòng)填充密碼的功能,用戶只需要一次填寫自己的賬號(hào)和密碼,系統(tǒng)就會(huì)記住密碼,兒童需要父母幫助其登陸系統(tǒng),下次進(jìn)入只需要填寫身份和對(duì)應(yīng)的賬號(hào)即可。系統(tǒng)界面友好且美觀,使用方便,頁(yè)面操作時(shí)大多選擇性居多,并且每一步都有提示。兒童學(xué)習(xí)能力強(qiáng),即使是兒童,只需要在使用前幫助他們了解此平臺(tái)并且用前培訓(xùn),他們也可輕松掌握。因此,該系統(tǒng)在操作層面是可行的。系統(tǒng)功能需求分析系統(tǒng)功能需求分析主要明確管理系統(tǒng)所要滿足的具體要求,以便更好的實(shí)現(xiàn)系統(tǒng)的設(shè)計(jì)。為了了解用戶的需求,對(duì)部分家庭進(jìn)行了調(diào)研。確定主要功能主要有:(1)本系統(tǒng)需要有三種角色,管理員、家長(zhǎng)和兒童。(2)管理員主要實(shí)現(xiàn)對(duì)用戶信息的管理,可以實(shí)現(xiàn)對(duì)用戶信息的增刪改操作。(3)家長(zhǎng)主要起到監(jiān)督管理的作用,可以隨時(shí)了解兒童的收入支出情況,當(dāng)收入支出大于設(shè)定的金額時(shí)家長(zhǎng)會(huì)有提示。審核兒童的計(jì)劃安排。引導(dǎo)孩子學(xué)會(huì)儲(chǔ)蓄,模擬網(wǎng)上銀行操作,家長(zhǎng)為孩子開戶,開戶成功后采用獎(jiǎng)勵(lì)式方法為兒童設(shè)置存錢目標(biāo),達(dá)到目標(biāo),可以獎(jiǎng)勵(lì)。(4)兒童主要是在家長(zhǎng)的引導(dǎo)和監(jiān)督下,學(xué)會(huì)自己記錄收支記錄,學(xué)會(huì)對(duì)自己的收入支出有一定的安排,并根據(jù)自己想得到的獎(jiǎng)勵(lì)完成媽媽所設(shè)置的存儲(chǔ)目標(biāo)金額。同時(shí)設(shè)計(jì)一個(gè)愛(ài)心捐款頁(yè)面,讓兒童在儲(chǔ)蓄的同時(shí)不忘幫助他人,對(duì)他人保持熱愛(ài)之心。用戶需求分析根據(jù)系統(tǒng)功能需求分析,系統(tǒng)具體可分為三大角色:管理員,家長(zhǎng),兒童。不同的角色有不同的權(quán)限。(1)管理員:用戶管理。如圖2所示。圖2管理員用例圖(2)家長(zhǎng):主要是兒童銀行管理、兒童計(jì)劃管理、兒童愿望管理、消息郵箱綁定和兒童賬單管理五大方面。如圖3所示。圖3家長(zhǎng)用例圖(3)兒童:主要是收入支出管理、計(jì)劃安排管理、銀行余額管理、愛(ài)心捐贈(zèng)管理和愿望清單管理五大方面。如圖4所示。圖4兒童用例圖系統(tǒng)總體設(shè)計(jì)系統(tǒng)總體架構(gòu)設(shè)計(jì)兒童零花錢管理系統(tǒng)主要采用SSM(SpringMVC+Spring+MyBatis)三層架構(gòu)作為基本的web開發(fā)框架,且每層都選擇合適的技術(shù)實(shí)現(xiàn)了較好的剝離了各功能模塊的業(yè)務(wù)邏輯,實(shí)現(xiàn)了分層功能,具體架構(gòu)如圖5所示。圖5整體架構(gòu)圖技術(shù)架構(gòu)是JavaEE平臺(tái),用SSM架構(gòu)實(shí)現(xiàn)了用戶交互,控制業(yè)務(wù)邏輯和數(shù)據(jù)持久化等功能??梢苑譃槿髮樱憩F(xiàn)層、業(yè)務(wù)層和持久層。(1)表現(xiàn)層即控制層,當(dāng)瀏覽器發(fā)出請(qǐng)求之后,表現(xiàn)層接收請(qǐng)求參數(shù)并處理請(qǐng)求,之后調(diào)用業(yè)務(wù)層操作,業(yè)務(wù)層調(diào)用持久層,之后將結(jié)果通過(guò)表現(xiàn)層響應(yīng)給用戶。兒童零花錢管理系統(tǒng)主要使用JSP技術(shù)實(shí)現(xiàn)用戶的前后端交互,兒童零花錢的管理系統(tǒng)的主要操作用戶是管理員,家長(zhǎng)和兒童,不同的操作用戶按照不同的需求操作本系統(tǒng),之后調(diào)用不同層的邏輯代碼對(duì)不同用戶的請(qǐng)求進(jìn)行響應(yīng)。(2)業(yè)務(wù)層:它對(duì)整個(gè)系統(tǒng)的業(yè)務(wù)邏輯進(jìn)行處理,是系統(tǒng)的核心。它承上啟下,控制層接收到請(qǐng)求參數(shù)之后,會(huì)調(diào)用業(yè)務(wù)層,業(yè)務(wù)層調(diào)用持久層,持久層對(duì)數(shù)據(jù)庫(kù)進(jìn)行增刪改查操作。(3)持久層:對(duì)數(shù)據(jù)庫(kù)進(jìn)行持久化操作,通過(guò)Dao接口和xml文件聯(lián)合使用,方便管理。系統(tǒng)功能模塊劃分兒童零花錢管理系統(tǒng)主要是對(duì)兒童零花錢的管理和系統(tǒng)的維護(hù)。通過(guò)兒童零花錢管理系統(tǒng)的實(shí)現(xiàn),讓家長(zhǎng)和兒童對(duì)兒童的零花錢的消費(fèi)和收入動(dòng)向都有所了解,并輔助幫助兒童樹立理財(cái)目標(biāo),達(dá)到儲(chǔ)蓄的結(jié)果。本系統(tǒng)采用B/S模式,基于MVC思想,利用SSM框架,完成web系統(tǒng)。從系統(tǒng)的整體功能來(lái)看,主要分為用戶和管理員,用戶主要是針對(duì)家長(zhǎng)和兒童,所以系統(tǒng)細(xì)分為三大模塊:管理員模塊,家長(zhǎng)模塊,兒童模塊。登陸時(shí)都需要對(duì)其身份進(jìn)行判定。系統(tǒng)功能結(jié)構(gòu)圖如圖6所示。圖6系統(tǒng)功能結(jié)構(gòu)圖管理員子系統(tǒng)功能劃分管理員的主要功能是對(duì)用戶的管理。功能管理圖如圖7所示。圖7管理員模塊圖用戶管理:管理員對(duì)用戶信息的增刪改。添加修改主要是添加修改用戶名,密碼,姓名,年齡,電子郵件,性別,詳細(xì)地址,用戶類型(兒童或者家長(zhǎng)),當(dāng)用戶類型為兒童時(shí)需要選擇對(duì)應(yīng)的家長(zhǎng),沒(méi)有家長(zhǎng)賬號(hào)不能注冊(cè)賬號(hào)。刪除操作時(shí),選中一行刪除即可。家長(zhǎng)子系統(tǒng)功能劃分家長(zhǎng)模塊主要分為兒童銀行管理、兒童計(jì)劃管理、兒童愿望管理、消息郵箱綁定、兒童賬單管理,功能結(jié)構(gòu)圖如圖8所示。圖8家長(zhǎng)模塊圖(1)兒童銀行管理家長(zhǎng)為兒童進(jìn)行開戶操作和設(shè)置金額操作。此窗口在加載之后會(huì)顯示對(duì)應(yīng)兒童的用戶名,姓名,性別,年齡,銀行賬號(hào),卡號(hào),余額,預(yù)期金額,詳細(xì)地址,家長(zhǎng)開戶前銀行賬戶,卡號(hào),余額和預(yù)期金額都為空。家長(zhǎng)點(diǎn)擊開戶可以為對(duì)應(yīng)的的兒童添加10位卡號(hào)和5位銀行賬號(hào),開戶成功后,余額為0。家長(zhǎng)雙擊賬戶余額下的文本框?yàn)閮和O(shè)置預(yù)期金額。當(dāng)兒童賬戶余額達(dá)到家長(zhǎng)設(shè)置的預(yù)期金額時(shí),預(yù)期金額會(huì)從紅色變?yōu)榫G色。(2)兒童計(jì)劃管理兒童計(jì)劃的查詢和審批操作,查詢按兒童姓名查詢,再選擇計(jì)劃同意或者不同意,同意或者不同意都需要標(biāo)注自己的意見(jiàn)。此頁(yè)面可以看見(jiàn)兒童計(jì)劃的編輯時(shí)間、總金額、狀態(tài),我的建議和操作??梢圆樵儍和敿?xì)計(jì)劃安排,可以看見(jiàn)用途,時(shí)間,金額。(3)兒童愿望管理查看兒童購(gòu)物車?yán)锏臇|西。此頁(yè)面會(huì)顯示兒童用戶名,姓名,年齡,性別,賬戶余額和預(yù)期金額。當(dāng)看到預(yù)期金額大于或等于賬戶余額時(shí),可以和兒童商量線下購(gòu)買禮物。(4)消息郵箱綁定添加操作,添加家長(zhǎng)的真實(shí)電子郵箱和郵箱授權(quán)碼,當(dāng)兒童收入支出大于50的時(shí)候,系統(tǒng)會(huì)給此郵箱發(fā)送信息。郵箱里有兒童的用戶名和兒童收入支出的金額。(5)兒童賬單管理查詢按照姓名查詢,可以查詢某個(gè)兒童的收入支出賬單。主要有收入支出賬單的創(chuàng)建時(shí)間、總金額、類型和備注。兒童子系統(tǒng)功能劃分兒童模塊主要分為收入支出管理,計(jì)劃安排管理,銀行余額管理,愛(ài)心捐贈(zèng)管理,愿望清單管理,歡迎頁(yè)帶有收入支出的折線圖。如圖9所示。圖9兒童模塊圖(1)收入支出管理添加修改查詢操作,添加修改查詢收支記錄,主要是添加修改賬單類型、創(chuàng)建日期、總金額,備注。查詢可以按收入支出類型查詢。此頁(yè)面包括金額的計(jì)算,主要計(jì)算某一頁(yè)的收入支出的總金額,金額不分正負(fù)。(2)計(jì)劃安排管理添加查詢修改計(jì)劃安排。主要添加用途、時(shí)間、金額,可以一次添加多條計(jì)劃,系統(tǒng)會(huì)自動(dòng)計(jì)算這一次所以計(jì)劃的總金額。查詢可以按父母審核狀態(tài)查詢,分為全部,同意,不同意,審核這幾個(gè)選項(xiàng)。此頁(yè)面顯示編輯時(shí)間,總金額,狀態(tài),家長(zhǎng)建議。并且可以查詢?cè)敿?xì)的計(jì)劃安排,顯示用途,時(shí)間,金額。修改操作只有在父母不同意計(jì)劃時(shí)才會(huì)展示,按父母意見(jiàn)修改即可。(3)銀行余額管理存錢,取錢操作。選擇存錢或者取錢,輸入金額即可進(jìn)行。操作之后兒童賬戶余額錢會(huì)自動(dòng)改變。在系統(tǒng)中設(shè)置了利息,金額不同利息不同,每日進(jìn)行結(jié)算。(4)愛(ài)心捐贈(zèng)管理添加查詢愛(ài)心記錄。添加可以選擇感興趣的公益圖片點(diǎn)擊即可。查詢的話按時(shí)間查詢愛(ài)心記錄。此窗口主要顯示捐贈(zèng)內(nèi)容、創(chuàng)建日期,捐贈(zèng)金額。(5)愿望清單管理添加刪除圖片。此頁(yè)面展示各種圖片,點(diǎn)擊添加愿望單可以添加到愿望單里,點(diǎn)擊刪除可以把添加的圖片刪除掉。數(shù)據(jù)庫(kù)設(shè)計(jì)三種模塊之間并不是獨(dú)立存在的,他們之間相互關(guān)聯(lián),為此設(shè)計(jì)了9張表,如圖10所示圖10數(shù)據(jù)庫(kù)表模型各個(gè)表的詳細(xì)設(shè)計(jì)如下:(1)收支管理表,如表1所示。表1收支管理表(t_bill)備注列名數(shù)據(jù)類型長(zhǎng)度允許空IDidint11否用戶idu_idint11是賬單類型typeint11是總金額amountfloat是創(chuàng)建日期create_datechar10是備注markvarchar100是(2)計(jì)劃安排表,如表2所示。表2計(jì)劃安排表(t_plan)備注列名數(shù)據(jù)類型長(zhǎng)度允許空IDidint11否用戶idu_idint11是編輯時(shí)間edit_datechar10是狀態(tài)stateint11是家長(zhǎng)建議parent_advicevarchar100是(3)計(jì)劃安排詳表,如表3所示。表3計(jì)劃安排詳單表(t_plan_item)備注列名數(shù)據(jù)類型長(zhǎng)度允許空IDidint11否用戶idplan_idint11是用途use_wherevarchar50是時(shí)間use_datechar10是金額amountfloat是(4)愛(ài)心捐贈(zèng)表,如表4所示。表4愛(ài)心捐贈(zèng)表(t_donate)備注列名數(shù)據(jù)類型長(zhǎng)度允許空IDidint11否用戶idu_idint11是捐贈(zèng)內(nèi)容titlevarchar50是捐贈(zèng)金額amountfloat是創(chuàng)建日期create_datechar10是(5)愿望清單表,如表5所示。表5愿望清單表(t_cart)備注列名數(shù)據(jù)類型長(zhǎng)度允許空IDidint11否用戶idu_idint11是圖片名字namevarchar50是圖片后綴名end_withchar4是(6)兒童銀行管理表,如表6所示。表6兒童銀行開戶表(t_bank)備注列名數(shù)據(jù)類型長(zhǎng)度允許空IDidint11否用戶idu_idint11是銀行賬號(hào)bank_accountchar5是卡號(hào)card_idchar10是余額amountfloat是(7)用戶管理表,如表7所示。表7用戶管理表(t_user)備注列名數(shù)據(jù)類型長(zhǎng)度允許空IDidint11否用戶名usernamechar20是密碼pswchar20是姓名namechar15是年齡ageint11是電子郵件emailvarchar50是性別genderint11是地址addressvarchar100是用戶類型roleint11是預(yù)期金額expected_amountfloat是授權(quán)碼authorization_codechar20是(8)兒童和家長(zhǎng)界面的關(guān)聯(lián)表,如表8所示。表8關(guān)聯(lián)表(t_user_user)備注列名數(shù)據(jù)類型長(zhǎng)度允許空IDidint11否家長(zhǎng)idparent_idchar5是兒童idchild_idchar10是系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)程序流程圖(1)管理員程序流程圖如圖11所示。圖11管理員程序流程圖(2)家長(zhǎng)程序流程圖如圖12所示。圖12家長(zhǎng)程序流程圖(3)兒童程序流程圖如圖13所示。圖13兒童程序流程圖系統(tǒng)實(shí)現(xiàn)登陸界面此頁(yè)面需要對(duì)用戶的合法性進(jìn)行檢驗(yàn)以保障數(shù)據(jù)的真實(shí)性和有效性。主要包含三種角色,管理員,家長(zhǎng)和兒童,首次登陸都需要輸入用戶名、密碼和身份選擇才能成功進(jìn)入,記住密碼之后,只需要選擇對(duì)應(yīng)賬號(hào)和身份就能成功進(jìn)入。密碼自動(dòng)填充功能主要用到了客戶端技術(shù)cookie和服務(wù)端技術(shù)session并用攔截器HandleInterceptor進(jìn)行了登陸攔截和權(quán)限校驗(yàn)。在login.jsp頁(yè)面里,獲取cookie值并填充到文本框里。在servlet包里設(shè)置了安全攔截,主要是從session里獲取用戶信息,如果session里用戶信息為空,就進(jìn)行安全攔截,如果不為空就對(duì)其權(quán)限進(jìn)行校驗(yàn),判斷用戶是否有對(duì)應(yīng)的權(quán)限。如圖14所示。圖14用戶登陸圖兒童模塊實(shí)現(xiàn)(1)收入支出管理此頁(yè)面主要實(shí)現(xiàn)了兒童收支記錄的添加、修改、查詢操作,不提供刪除操作,以方便父母查詢到所有的收支。主要介紹頁(yè)面的分頁(yè)操作和賬單大于50時(shí)給父母郵箱發(fā)送信息的操作。如圖15所示。分頁(yè)操作:在實(shí)體層里定義了PageBean的對(duì)象,實(shí)例化對(duì)象采用構(gòu)造函數(shù)處理分頁(yè),在childrenService層直接調(diào)用對(duì)象。publicPageBean(intpage,introws,List<t>list){this.page=page;this.pageSize=rows;this.total=list.size();Listdata=newArrayList();intend=(page*pageSize)>list.size()?list.size():(page*pageSize),start=(1)*pageSize;for(inti=start;i<end;i++){data.add(list.get(i));}this.rows=data;}發(fā)送賬單信息:主要包塊發(fā)送的服務(wù)地址,配置參數(shù)載體,創(chuàng)建實(shí)例對(duì)象獲取然后發(fā)送。主要接口函數(shù)為privatevoidsendMail(StringauthorizationCode,Stringmail,Stringname,Stringusername,floatamount,inttype)。圖15收入支出管理圖(2)計(jì)劃安排管理此頁(yè)面主要是兒童添加計(jì)劃安排,并根據(jù)家長(zhǎng)建議修改自己的計(jì)劃安排。主要業(yè)務(wù)邏輯實(shí)現(xiàn)在ChildrenService中。用戶編輯計(jì)劃的用途、時(shí)間和金額。然后service調(diào)用dao層方法實(shí)現(xiàn)操作。主要實(shí)現(xiàn)接口函數(shù):publicResultupdatePlan(Integerid,List<PlanItem>planItems,intuid),根據(jù)id和用戶id獲取計(jì)劃所有計(jì)劃安排和安排詳情。如圖16所示。圖16計(jì)劃安排管理圖(3)銀行余額管理此頁(yè)面可以查看自己的銀行賬戶信息和賬戶余額,可以完成存取錢操作。對(duì)于不同階段的賬戶余額有不同的利息,每日結(jié)算一次利息。當(dāng)余額不足時(shí)不能取錢。如圖17所示。利息實(shí)現(xiàn):在SpingMVC.xml里定義任務(wù)調(diào)度器,并開啟注解調(diào)度支持。主要接口函數(shù)為publicvoidinterest()。在此函數(shù)里調(diào)用ChildrenDao定義的方法,遍歷賬戶余額,不同金額段設(shè)置不同利息。圖17銀行余額管理圖(4)愛(ài)心捐贈(zèng)管理愛(ài)心捐贈(zèng)主要是選擇兒童自己感興趣的公益項(xiàng)目,點(diǎn)擊圖片添加即可。圖片添加的實(shí)現(xiàn):在editDonate.jsp里設(shè)置了圖片路徑,/static/img/shan_qu.jpg。如圖18所示。圖18愛(ài)心捐贈(zèng)管理圖(5)愿望清單管理此頁(yè)面主要包括玩具的展示和愿望單兩個(gè)部分組成。如圖19所示。玩具展示實(shí)現(xiàn):圖片存儲(chǔ)位置為規(guī)定好的文件位置,并且對(duì)當(dāng)前文件夾不是我們要求的圖片后綴名進(jìn)行過(guò)濾。并且執(zhí)行分頁(yè)操作,將所有圖片展示的結(jié)果存儲(chǔ)到list集合里,圖片展示實(shí)現(xiàn)主要代碼如下:publicMap<String,Object>getPathToy(IntegerpageNumber,IntegerpageSize){//該路徑為規(guī)定好的路徑Filefile=newFile("E:\\D盤\\pic");//過(guò)濾掉當(dāng)前路徑下的文件或文件夾不是圖片文件,該值為路徑下的所有玩具名String[]fileNames=file.list((dir,name)->{if(name.endsWith(".bmp")||name.endsWith(".jpg")||name.endsWith(".jpeg")||name.endsWith(".gif")||name.endsWith(".png")){returntrue;}returnfalse;})圖19愿望清單管理圖(6)收支趨勢(shì)可以直觀的看出兒童本月的收入支出趨勢(shì)。紅色為收入,藍(lán)色為支出。頁(yè)面如圖20所示。主要代碼如下所示。publicMapgetMyselfThisMonthRevenue(intuid){Stringtemp=newSimpleDateFormat("yyyy-MM-").format(newDate());//獲取收入的當(dāng)月的數(shù)據(jù)Float[]gets=this.childrenDao.getMyselfGetAmount(uid,temp+"01");//獲取支出的當(dāng)月的數(shù)據(jù)Float[]puts=this.childrenDao.getMyselfPutAmount(uid,temp+"01");HashMap<Object,Object>map=newHashMap<>();map.put("gets",gets);map.put("puts",puts);map.put("dayOfMonth",getBetweenDate(temp));returnmap;}圖20收支趨勢(shì)圖家長(zhǎng)模塊實(shí)現(xiàn)(1)兒童銀行管理主要是開戶操作和設(shè)置預(yù)期金額。當(dāng)家長(zhǎng)進(jìn)行設(shè)置預(yù)期金額操作時(shí)系統(tǒng)會(huì)調(diào)用publicResultsetExpectedAmountByUid(floatexpectedAmount,intuid)函數(shù),根據(jù)用戶id設(shè)置預(yù)期金額。如圖21所示。圖21兒童銀行管理圖(2)兒童計(jì)劃管理主要是審批兒童計(jì)劃并標(biāo)注意見(jiàn)同時(shí)家長(zhǎng)同意計(jì)劃之后會(huì)在兒童收支管理那里生成一條記錄。如圖22所示。其主要代碼如下:publicResultaddAdvice(Planplan){Floatamount=this.parentDao.getChildrenPlanAmountById(plan.getId());if(amount==null){amount=0f;}if(plan.getState()==2){intuid=this.parentDao.getChildrenIdByPlanId(plan.getId());//家長(zhǎng)同意為孩子存錢this.parentDao.saveMoney(amount,uid);//并生成賬單Billbill=newBill();bill.setType(1);bill.setMark("(家長(zhǎng)同意孩子計(jì)劃)");bill.setCreateDate(newSimpleDateFormat("yyyy-MM-dd").format(newDate()));bill.setAmount(amount);this.parentDao.insertBill(bill,uid);}this.parentDao.updatePlan(plan);returnnewResult(1,"添加成功!",null);}圖22兒童計(jì)劃管理圖(3)兒童愿望管理主要是對(duì)兒童愿望的查詢。對(duì)設(shè)置的預(yù)期金額和賬戶余額相比較,如果達(dá)到設(shè)置目標(biāo),可選取一個(gè)玩具線下購(gòu)買進(jìn)行獎(jiǎng)勵(lì)。如圖23所示。圖23兒童愿望管理圖(4)消息郵箱綁定可以添加電子郵件和授權(quán)碼,將兒童收支記錄金額大于50的,發(fā)送到郵箱。如圖24所示。在ParentDao里定義了實(shí)現(xiàn)方法。voidupdateEmailMsg(@Param("email")Stringemail,@Param("authorizationCode")StringauthorizationCode,@Param("uid")intuid);圖24消息郵箱綁定圖(5)兒童賬單管理主要是對(duì)兒童賬單的查詢。主要接口函數(shù)為publicPageBeangetChildrenBillListById(intuid,intpage,introws)。根據(jù)兒童id獲取兒童的收支賬單并且實(shí)現(xiàn)分頁(yè)操作。如圖25所示。具體為:publicPageBeangetChildrenBillListById(intuid,intpage,introws){List<Bill>childrenBillListById=this.parentDao.getChildrenBillListById(uid);returnnewPageBean(page,rows,childrenBillListById);}圖25兒童賬單管理圖管理員模塊實(shí)現(xiàn)主要是對(duì)用戶信息的添加、刪除、修改和查詢操作,對(duì)兒童年齡進(jìn)行了限制,需要9到13歲之間。如圖26所示。修改代碼如下所示:publicvoidupdateUser(Useruser,IntegerparentId){//大于零的話即為修改操作,因?yàn)閿?shù)據(jù)庫(kù)主鍵是以1開始自增的if(user.getId()>0){this.adminDao.updateUser(user);return;}//規(guī)定傳入的是-1的話即為添加用戶操作this.adminDao.insertUser(user)if(parentId!=null){this.adminDao.insertRelateUser(parentId,user.getId());}圖26用戶管理圖系統(tǒng)測(cè)試在系統(tǒng)各個(gè)功能模塊完成后,為了能保證系統(tǒng)正常運(yùn)行,我們要通過(guò)測(cè)試盡可能找出系統(tǒng)的錯(cuò)誤并改正。測(cè)試是保證系統(tǒng)質(zhì)量的核心步驟,對(duì)整個(gè)項(xiàng)目開發(fā)來(lái)說(shuō)是非常重要的。系統(tǒng)測(cè)試環(huán)境系統(tǒng)環(huán)境主要包括系統(tǒng)開發(fā)和部署環(huán)境,系統(tǒng)開發(fā)環(huán)境指開發(fā)人員時(shí)在開發(fā)系統(tǒng)時(shí)所要搭建的環(huán)境。系統(tǒng)實(shí)現(xiàn)的最終目的是將開發(fā)環(huán)境部署到運(yùn)行環(huán)境上。兒童零花錢管理系統(tǒng)首先在本人筆記本電腦上實(shí)現(xiàn)系統(tǒng)的開發(fā)和部署,假設(shè)用戶電腦配置和此電腦配置相似,最終確定系統(tǒng)的測(cè)試環(huán)境為:操作系統(tǒng):win10版本開發(fā)語(yǔ)言:java,css,javascript開發(fā)平臺(tái):JavaEE開發(fā)工具:IntelliJ
IDEA開發(fā)環(huán)境:jdk1.8數(shù)據(jù)庫(kù):Mysql服務(wù)器:Tomcat8.5.53系統(tǒng)測(cè)試用例測(cè)試用例主要是測(cè)試人員根據(jù)規(guī)定的標(biāo)準(zhǔn)對(duì)系統(tǒng)的不同功能進(jìn)行反復(fù)對(duì)比測(cè)試,以檢驗(yàn)系統(tǒng)的功能是否滿足設(shè)計(jì)。結(jié)果如表9所示。表9測(cè)試用例表功能名稱能否實(shí)現(xiàn)結(jié)果備注說(shuō)明輸入用戶名能用戶名可正常輸入用戶名不能為空輸入密碼能密碼匹配成功密碼不能為空選擇身份能身份和用戶名密碼匹配成功身份要選擇對(duì)應(yīng)的用戶信息添加修改和刪除能用戶信息添加修改刪除成功電子郵件和詳細(xì)地址可為空添加銀行賬
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 站牌安裝施工方案(3篇)
- 船廠打磨施工方案(3篇)
- 耕作便道施工方案(3篇)
- 解決方案成果匯報(bào)
- 2025年高職本科(移動(dòng)通信技術(shù))5G應(yīng)用開發(fā)階段測(cè)試題及答案
- 2025年大學(xué)第四學(xué)年(計(jì)算機(jī)科學(xué)與技術(shù))人工智能應(yīng)用開發(fā)試題及答案
- 2025年大學(xué)大四(歷史學(xué))史學(xué)史階段測(cè)試題及答案
- 2025年大學(xué)電機(jī)與電器(電機(jī)設(shè)計(jì)技術(shù))試題及答案
- 2025年中職(化學(xué)工藝)化工管路安裝測(cè)試題及解析
- 2025年高職材料成形技術(shù)(焊接工藝設(shè)計(jì))試題及答案
- 電纜局部放電試驗(yàn)報(bào)告模板
- 鸚鵡熱治療講課件
- 低碳-零碳產(chǎn)業(yè)園清潔能源供暖技術(shù)規(guī)范DB15-T 3994-2025
- 小學(xué)的思政教育
- 學(xué)術(shù)道德與學(xué)術(shù)規(guī)范嚴(yán)守誠(chéng)信底線共建優(yōu)良學(xué)風(fēng)培訓(xùn)課件
- 門診預(yù)約掛號(hào)流程
- 光伏防火培訓(xùn)課件
- 2025中學(xué)生國(guó)防教育
- 電視節(jié)目編導(dǎo)與制作(全套課件147P)
- 《海外并購(gòu)》課件
- 醫(yī)學(xué)預(yù)防科普
評(píng)論
0/150
提交評(píng)論