

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 天津工業(yè)大學</b></p><p><b> 畢業(yè)設計(論文)</b></p><p> 基于SSH2框架的中華美食學習交流系統(tǒng)設計與實現(xiàn)</p><p> 姓 名 鄭澤銘 </p><p> 學 院 計算機科學與軟件
2、</p><p> 專 業(yè) 軟件工程 </p><p> 指導教師 尹紹宏 張建軍 </p><p> 職 稱 副教授 高級工程師 </p><p> 2016年 5 月29日</p><p> 天津工業(yè)大學畢業(yè)設計(論文)任務書</p><p&
3、gt; 院長 教研室主任 指導教師 </p><p> 畢業(yè)設計(論文)開題報告表</p><p> 2016年 3 月10日</p><p> 天津工業(yè)大學本科畢業(yè)設計(論文)評閱表</p><p><b> ?。ㄕ撐念悾?lt;/b>
4、;</p><p> 天津工業(yè)大學畢業(yè)設計(論文)成績考核表</p><p><b> 摘 要</b></p><p> 民以食為天,我國的美食文化源遠流長,一直被人傳承發(fā)展著。近些年來,隨著網(wǎng)絡化建設的發(fā)展,網(wǎng)絡化美食學習交流系統(tǒng)也越來越火,因此建設一個好的美食學習交流系統(tǒng)顯的越來越有必要了。隨著人們生活水平的不斷提高,在家里、在宿舍
5、、在辦公室,上網(wǎng)已經(jīng)不是什么很困難的事情,通過美食學習交流系統(tǒng),人們可以參與各種自己喜歡的美食話題,與志同道合的朋友一起交流心得,特別是對于一些愛美食、愛做菜的朋友們來說美食學習交流系統(tǒng)系統(tǒng)就是提供給注冊用戶一個平臺,會員用戶可以通過Internet接入登錄系統(tǒng),在這個平臺上發(fā)表菜譜、閱讀菜譜、回復等等。</p><p> 本畢業(yè)設計的內容是設計并且實現(xiàn)一個基于SSH2框架的中華美食學習交流系統(tǒng),本系統(tǒng)以jav
6、a為開發(fā)語言,在web環(huán)境下,基于B/S三層結構模式,以myeclipse2014為開發(fā)工具,以MYSQL5.6作為數(shù)據(jù)庫。這個系統(tǒng)具有比較好的伸縮性能,擴展性很強,兼容性好、容易維護、界面也很美觀,功能也很簡單實用,其中包括:首頁板塊,發(fā)布菜肴,用戶間的回復、評論、私信,版主對帖子的審核,管理員對用戶和板塊的管理等。通過本系統(tǒng),可以讓人們實現(xiàn)實時在線交流,真正做到信息資料的共享,也可以積極而及時地參與討論,在了解他人觀點意見的同時也可
7、以發(fā)表自己的看法。</p><p> 關鍵詞:中華美食學習交流系;JAVA ;JSP</p><p><b> ABSTRACT </b></p><p> The food culture of our country has a long history, has always been people passing on. In r
8、ecent years, with the development of network construction, network of the gourmet learning website communication is becoming more and more popular, so the construction of a good food learning exchange site becomes more a
9、nd more necessary. With the continuous improvement of people's living standards, at home, in the dormitory, in the office, Internet is not what a difficult thing, through food learning exch</p><p> This
10、 graduation design is to design and implement a an SSH2 framework must study Chinese cuisine based communication system, this system based on Java development language, under the web environment, based on B/S three layer
11、 structure model, development tools for myeclipse2014, MYSQL5.6 as database, the system has good scalability can, scalability is very strong, good compatibility, easy maintenance, the interface is also very beautiful, fu
12、nction is simple and practical, including: home page pla</p><p> Keywords: Food exchange website ;JAVA;JSP</p><p><b> 目 錄</b></p><p> 第一章 緒 論1</p><p>
13、 1.1 開發(fā)背景1</p><p> 1.2 系統(tǒng)開發(fā)意義1</p><p> 1.3 組織安排2</p><p> 第二章 關鍵技術簡介4</p><p> 2.1 系統(tǒng)開發(fā)環(huán)境介紹4</p><p> 2.2 系統(tǒng)開發(fā)的思想與技術5</p><p> 第三章 系統(tǒng)
14、需求分析6</p><p> 3.1 系統(tǒng)可行性分析6</p><p> 3.2 總體功能模塊6</p><p> 3.3 系統(tǒng)管理員功能模塊7</p><p> 3.4 用戶的功能模塊8</p><p> 3.5 板塊管理員的功能模塊8</p><p> 3.6 系統(tǒng)業(yè)
15、務描述9</p><p> 3.7 程序流程圖的設計10</p><p> 第四章 系統(tǒng)詳細設計12</p><p> 4.1 系統(tǒng)和數(shù)據(jù)庫的配置12</p><p> 4.2 概念模型設計12</p><p> 4.3 數(shù)據(jù)庫邏輯模型的設計16</p><p> 4.4
16、 數(shù)據(jù)庫表結構的設計16</p><p> 第五章 系統(tǒng)功能實現(xiàn)18</p><p> 5.1 程序類圖的設計19</p><p> 5.2 程序功能時序圖的實現(xiàn)25</p><p> 5.3 系統(tǒng)實現(xiàn)主要框架的介紹27</p><p> 5.4 實現(xiàn)功能預覽31</p><p
17、> 第六章 系統(tǒng)的調試與測試43</p><p> 6.1軟件測試的目的43</p><p> 6.2軟件測試的任務43</p><p> 6.3測試環(huán)境43</p><p> 6.4測試過程44</p><p><b> 結 論48</b></p>
18、<p><b> 參考文獻50</b></p><p><b> 附 錄51</b></p><p><b> ?、?英文原文51</b></p><p><b> ?、?中文譯文55</b></p><p><b> 謝
19、 辭58</b></p><p><b> 第一章 緒 論</b></p><p><b> 1.1 開發(fā)背景</b></p><p> 快節(jié)奏的生活伴隨著逐步便捷的社會信息化給我們帶來的影響頗深?,F(xiàn)在這種所謂的信息化已經(jīng)深深地融入了我們生活的各個方面,與此同時,在這個被信息化強烈沖擊下的時代,
20、人們對于網(wǎng)絡使用的需求已經(jīng)不再是簡簡單單的看一些資料或是網(wǎng)購了,而是更加注重于在情感與信息之前的交互,讓情與感通過信息的方式交流與傳遞。世界的各個角落的人可以像面對面一樣的交談、討論,這對于人們來說充滿了相當大的誘惑力和影響力。</p><p> 互聯(lián)網(wǎng)的產(chǎn)生以及社會信息化的日趨普及使的以前只能在本地訪問的美食學習交流系統(tǒng)可以在全世界的任何角落進行隨意的訪問,這極大的增加了人們對于這個網(wǎng)絡需求的興趣。在美食學習
21、交流系統(tǒng)上用戶可以對一個大家共同感興趣的菜肴進行發(fā)布、評論交流,無拘無束的抒發(fā)情感,說出自己想說的話,通過評論、回復、私信等功能進行用戶間的間接交流。本畢業(yè)設計所采用的,是稱為瀏覽器——服務器的B/S結構,它的特點是在客戶端直接采用了功能強大的瀏覽器軟件作為界面,其優(yōu)點是在于軟件的開發(fā)效率變高了,客戶端不受操作平臺的限制、也不受地域的限制,網(wǎng)絡傳輸量少,即適用于局域網(wǎng),更適用于Internet,而且投資小、見效快,用戶可以不必進行服務器
22、方面的投資,而是去租用,甚至是免費使用ISP的服務器資源,因而受到越來越多中小型單位的青睞。</p><p> 如今,基于SSH2框架的中華美食學習交流系統(tǒng)可以說是一種非常極為常見的交流互動服務系統(tǒng)了。人們不僅僅可以在此學習到各種感興趣的菜肴的配料及制作過程,還可以通過評論相互交流煮菜的經(jīng)驗以及暢談美食所能帶給我們的人生哲理,同時也可以相互關注,發(fā)私信,交朋友,互相學習交流,回復他人的留言等。我相信好吃的料理是
23、可以改變一個人的,這也是此系統(tǒng)深受廣大用戶喜愛的原因。</p><p> 1.2 系統(tǒng)開發(fā)意義</p><p> 伴隨著社會信息化的普及,如今越來越多的人都能夠滿足對于網(wǎng)絡的需求,所以基于SSH2框架的中華美食學習交流系統(tǒng)也是各種學習交流菜譜的比較好的的交流場所,可以很好的為美食愛好者提供了學習交流環(huán)境。在系統(tǒng)的各個板塊內,各等級用戶圍繞某道菜肴或者是某類問題,通過對評論的發(fā)表、話題
24、的回復、用戶間的私信、關注等方式進行一種通過虛擬連接的溝通,相互探討、相互學習,形成了一種以追捧各系美食為中心的交流學習方式。</p><p> 與此同時系統(tǒng)的內容也變的越來越精彩豐富,標新立異,彰顯用戶的個性,各種活動花樣更是層出不窮,該系統(tǒng)也由此深受廣大用戶的鐘愛。這些使用美食學習交流系統(tǒng)的人可以處于一個相互平等的位置與其他用戶進行任何有關于美食問題的探討。這相比于更多的交流方式而言擁有不避諱性、自由性,使
25、用戶用得更放松且隨意,但不是隨便。系統(tǒng)也是各種學習交流資源組合的場所,為美食愛好者提供了學習交流環(huán)境。作為一個美食愛好者參與系統(tǒng)的網(wǎng)絡活動可獲得多種學習交流的途徑以及意義。從該系統(tǒng)用戶參與的情況來看,在各個板塊里,基本上每道菜肴提出的問題都可以的到用戶友好的、認真的回復解答,有著濃郁的協(xié)作探討的學習交流氣氛和良好的學習交流效果。</p><p><b> 1.3 組織安排</b><
26、/p><p> 本文首先介紹了基于SSH2框架的中華美食學習交流系統(tǒng)的設計與實現(xiàn)的實現(xiàn)所明白的意義和研究該項目所包含的背景。隨后介紹了開發(fā)本系統(tǒng)所需要用到的java技術、SSH2框架搭建等,敘述了Java強大的功能及特點和相關的系統(tǒng)研究理論。接下里研究了系統(tǒng)的需求分析和可行性分析,從開發(fā)者和用戶等多重角度分析本系統(tǒng)的各個部分。接著介紹了該系統(tǒng)的各功能模塊的功能設計、所涉及的E-R圖、所設計的數(shù)據(jù)庫等。最后總結本系統(tǒng)
27、的結論、參考文獻、遇到的問題以及對將來的發(fā)展的觀望。</p><p><b> ?。?)任務目標</b></p><p> 本系統(tǒng)主要實現(xiàn)一個關于美食方面的貼吧功能需求,按照角色劃分闡述需求</p><p> 處于系統(tǒng)user以為的用戶即為未注冊的游客,其可以對所有板塊的帖子以及回復內容進行瀏覽,除此操作以外不能進行其他請求的行為。<
28、/p><p> 經(jīng)過注冊的普通用戶,其可以對各個板塊進行發(fā)布菜肴以及評論的操作,對其他用戶進行私信、關注,對自己的個人信息進行管理,包括個人的簡介、密碼、所發(fā)布的菜肴及恢復等。</p><p> 的到肯定的高級用戶即各版塊版主,他不但享有以上用戶的所有操作,還擁有對負責版塊的管理權。職能權限包括:對負責版塊的信息進行合法性的管理,設置精華、推薦、活動的功能。</p><
29、p> 系統(tǒng)的最高權限者管理員,其不僅擁有對板塊的管理,負責對板塊進行增加,刪除等功能,還擁有任命版主的權限。最為主要的是他可以對在本系統(tǒng)上發(fā)布不堪言論、違反網(wǎng)絡管理條例的用戶進行封號處理。</p><p><b> 運行環(huán)境</b></p><p> 處理器型號:AMD A8-3520M APU with Radeon(tm) HD Graphics<
30、;/p><p><b> 內存:4GB</b></p><p> 顯卡類型:AMD Radeon Graphics Processor(0*9641)</p><p> 分辨率:1366*768</p><p> 前臺:Dreamweaver CS4</p><p> 操作系統(tǒng):Window
31、s10 64bit</p><p> 數(shù)據(jù)庫:MYSQL5.6</p><p> 開發(fā)環(huán)境:Myeclipse2014</p><p> 服務器:Tomcat</p><p> 第二章 關鍵技術簡介</p><p> 2.1 系統(tǒng)開發(fā)環(huán)境介紹</p><p> ?。?)Myeclip
32、se2014</p><p> 在開發(fā)本平臺中所用到的開發(fā)工具就是是知名的java項目開發(fā)工具Myeclipse2014。MyEclipse2014整合了Hibernate、Struts2和Spring等最新版本內容,MyEclipse2014界面美觀,包含了一個清新的淡藍色主題,集成了主題支持的插件Eclipse Color Themes和Jeeeyul's Eclipse Themes,可以進行主題
33、樣式定制和切換。Myeclipse2014企業(yè)級工作平臺是對Eclipse IDE的一種擴展,利用Myeclipse2014,我們可以在數(shù)據(jù)庫和J2EE的開發(fā)、發(fā)布,以及在應用程序服務器的整合當中極大地提高系統(tǒng)的工作效率[6]。Myeclipse2014是一個功能非常豐富的J2EE集成開發(fā)環(huán)境,包括了完備的編碼、調試、測試和發(fā)布功能,完整支持HTML, Struts, JSP, CSS, Java scripts, SQL, Hiber
34、nate。</p><p> 在結構上,Myeclipse2014的特征可以被分為7類: J2EE的模型, EJB的開發(fā)工具,WEB的開發(fā)工具,應用程序服務器的連接器,數(shù)據(jù)庫服務,J2EE項目部署服務, Myeclipse2014等的整合幫助[7]。</p><p> 對于以上的每一種功能上的類別,在Eclipse中的都有相應的功能部件,并通過一系列的插件來實現(xiàn)它們的。Myeclips
35、e2014結構上的這種模塊化,可以讓我們在不影響其他模塊的情況下,對任一模塊進行單獨的擴展和升級。</p><p> 簡單而言,Myeclipse2014是一款功能強大的J2EE集成開發(fā)環(huán)境,支持代碼編寫、配置、測試以及除錯。</p><p><b> ?。?)數(shù)據(jù)庫介紹</b></p><p> 數(shù)據(jù)庫使用的是MYSQL5.6開源數(shù)據(jù)庫。
36、</p><p> MYSQL5.6的特性:使用C和C++編寫,并使用了多種編譯器進行測試,保證源代碼的可移植性 。支持AIX、Windows、FreeBSD、Mac OS、HP-UX、OS/2 Wrap、OpendBSD、Salaries、等多種操作系統(tǒng)[5]。為多種編程語言提供API。這些編程語言包括C、C++、Eiffel、Java、Python、Perl、Tel、Ruby和PHP等。支持多線程的充分利用
37、的CPU資源。優(yōu)化的SQL的查詢算法,有效地提高查詢速度。既是能夠作為一個單獨的應用程序應用在客戶端的服務器網(wǎng)絡環(huán)境中,也能夠 作為一個庫而嵌入到其他的是軟件中提供多語言支持,常見的編碼如中文的BIG5、GB2312,日文的Shift_JIS等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名[10]。提供TCP/IP、JDBC和ODBC等多種的數(shù)據(jù)庫連接途徑。提供用于檢查、管理、優(yōu)化數(shù)據(jù)庫操作的管理工具??梢蕴幚頁碛猩锨f條記錄的大型數(shù)據(jù)庫。</p&
38、gt;<p> MYSQL5.6的應用:與其他的大型數(shù)據(jù)庫例如Oracle、DB2、SQL Server等相比,MYSQL5.6自有它的不足之處,如規(guī)模小、功能有限(MYSQL5.6 Cluster的功能和效率都相對比較差)等,但是這絲毫也沒有減少它受歡迎的程度[12]。對于一般的個人使用者和中小型企業(yè)來說,MYSQL5.6提供的功能已經(jīng)綽綽有余,而且由于MYSQL5.6是開放源碼軟件,因此可以大大降低總體成本。<
39、/p><p><b> ?。?)Tomcat</b></p><p> Tomcat 很受廣大程序員的喜歡,因為它的運行時占用的系統(tǒng)資源小,擴展性好,支持負載平衡與郵件服務等開發(fā)應用系統(tǒng)常用的功能;而且它還在不斷的改進和完善中,任何一個感興趣的程序員都可以更改的它或在其中加入新的功能。 </p><p> Tomcat 是一個輕量級應用服務器,
40、在中小型的系統(tǒng)和并發(fā)訪問的用戶不是很多的場合下被普遍使用,是開發(fā)和調試JSP 程序的首選。但是對于一個初學者來說,可以這樣認為,當在一臺機器上配置好的Apache 服務器,可利用它響應對HTML 頁面的訪問請求[3]。實際上的Tomcat 部分是Apache 服務器的擴展,但它是獨立的運行的,所以當你運行tomcat 時,它實際上是作為一個與Apache 獨立的進程單獨運行的。 </p><p> 這里的訣竅是
41、,當配置正確時,Apache 為HTML的頁面服務,而Tomcat 實際上運行JSP 頁面和Servlet[13]。另外,Tomcat和IIS、Apache等Web服務器是一樣的,具有處理HTML頁面的功能,另外它還是一個Servlet的和JSP的容器,獨立的Servlet的容器是Tomcat的默認模式。</p><p> 2.2系統(tǒng)開發(fā)的思想與技術</p><p> 本系統(tǒng)采用jsp
42、技術,基于MVC模式開發(fā),使用SSH框架(struts2、spring、hibernate)來增加系統(tǒng)的開發(fā)速度[1]。所謂的MVC模式"Model-View-Controller"的縮寫,中文翻譯為"模式-視圖-控制器"。程序就是用struts2和hibernate這兩個框架來實現(xiàn)的模型層和控制器這兩層,jsp實現(xiàn)視圖的這一層[2]。一般來說程序就是在數(shù)據(jù)庫和頁面的之間起橋梁作用的,jsp頁面請
43、求先到action,再到dao,再回到action,回到jsp頁面,action主要處理來自頁面的請求,dao主要是和數(shù)據(jù)庫的交互,struts2主要用在action,處理來自頁面的請求,處理完請求后跳轉回頁面。Hibernate主要用在dao,包括對數(shù)據(jù)庫的增、刪、改、查的操作,spring控制程序的流程。</p><p> 第三章 系統(tǒng)需求分析</p><p> 可行性分析是建立在
44、綜合調研的基礎之上的,針對一個項目的開發(fā)看其是否具備必要性和可能性,對所開發(fā)的項目進行一系列調研,從運行、技術、經(jīng)濟等幾個大方面進行細致入微的研究,從而盡可能的去避免投資失誤所帶來的影響,保證項目成功的開發(fā)。項目的可行性分析的目的是用最小的代價,在最合理的時間內正確的將任務得以完成。我們將從技術可行性、經(jīng)濟可行性、各個功能需求等幾個方面進行調研和分析。</p><p> 隨著社會信息化的不斷普及,普通的PC已經(jīng)
45、可以基本勝任小型網(wǎng)站的服務器功能,所以該項目設計實現(xiàn)的運行服務器就是我的PC,使用開源的Tomcat作為發(fā)布服務器來完成該項目。</p><p> 3.1 系統(tǒng)可行性分析</p><p> 在技術方面,網(wǎng)站的服務器端開發(fā)使用MyEclipse,因為該平臺基于Eclipse且集成了很多插件,功能完整且強大,與編程人員交互友好,開發(fā)起來十分簡單易操作。數(shù)據(jù)存儲使用MySQL數(shù)據(jù)庫,其屬于輕
46、量級數(shù)據(jù)庫,可以有效的降低開發(fā)所需求的成本。</p><p> 在經(jīng)濟方面,本網(wǎng)站的開發(fā)是采用SSH2框架和MySQL小型數(shù)據(jù)庫,這兩者均屬于開源類,又有豐富的技術文檔文獻作為技術支持,這很大程度的降低了開發(fā)所需成本和維護所需成本。另外,項目如果建設完成達到上線的需求后,可以產(chǎn)生一定的經(jīng)濟收益。</p><p> 3.2 總體功能模塊</p><p> 中華美
47、食學習交流系統(tǒng)角色類分成三部分:</p><p> 系統(tǒng)管理員(最高權限擁有者)</p><p><b> 版塊管理員(版主)</b></p><p><b> 普通用戶</b></p><p> 總功能圖,如圖3-1所示: </
48、p><p> 圖3-1 系統(tǒng)功能需求分析</p><p> 3.3系統(tǒng)管理員功能模塊</p><p> 中華美食學習交流系統(tǒng)系統(tǒng)管理員主要實現(xiàn)的功能有對系統(tǒng)內各種美食版塊鑒定,查實是否需要增加新版塊或是刪除已有板塊,對用戶貢獻得肯定,該權限者有能力將突出貢獻者指派為一版之主。</p><p> 系統(tǒng)管理員功能圖,如圖3-2所示:</
49、p><p> 圖3-2 系統(tǒng)管理員功能圖</p><p> 3.4用戶的功能模塊</p><p> 中華美食學習交流系統(tǒng)用戶按要求和目得實現(xiàn)的操作有六個。如若想對本系統(tǒng)進行操作就要成為本系統(tǒng)的注冊用戶,完成注冊并登錄系統(tǒng)即可使用。緊接著介紹其擁有的操作權限,包括可以對菜肴進行充分的學習瀏覽,已回復評論的方式方法進行互動,成員之間可以相互發(fā)私密的信件(私信),還可以
50、對你喜歡的人進行關注。個人的信息得管理如頭像、名稱等是必不可少的。</p><p> 用戶的功能圖,如圖3-3所示:</p><p> 圖3-3 用戶的功能圖</p><p> 3.5板塊管理員的功能模塊</p><p> 中華美食學習交流系統(tǒng)版主被開發(fā)者開發(fā)出的權限包括:對菜肴信息是否合法的管理,如有違反網(wǎng)絡管制條例等操作可對該菜
51、進行刪除;對中華美食學習交流系統(tǒng)用戶發(fā)表的回復進行管理,如有發(fā)布不堪言論、反黨反人民、威脅社會主義共發(fā)展的言語,將對該回復進行刪除;綜合菜肴完成度、完整性、恢復是否出彩等方面對其進行是否精華、是否推薦的推送;作為一版之主可以對組織線下的活動,通過中華美食學習交流系統(tǒng)發(fā)布活動通知并進行報名以及各方面的準備。當然個人信息的管理如頭像、名稱等是必不可少的。</p><p> 板塊管理員的功能圖,如圖3-4所示:<
52、;/p><p> 圖3-4 板塊管理員的功能圖</p><p><b> 3.6系統(tǒng)業(yè)務描述</b></p><p> 本程序主要分系統(tǒng)管理員,板塊管理員 ,用戶三個用戶權限。系統(tǒng)管理員的主要功能有板塊管理、注冊用戶管理;用戶主要功能有注冊登陸、瀏覽菜譜回復、發(fā)回復、發(fā)私信、加關注、個人管理中心;板塊管理員的主要功能有菜譜合法性管理、回復合法
53、性管理、精華帖管理、版主推薦管理、板塊活動管理。</p><p> 用戶權限圖,如圖3-5所示:</p><p> 圖3-5 用戶權限圖</p><p> 3.7程序流程圖的設計</p><p> (1)用戶在查看完帖子之后發(fā)布回復的流程圖,如圖3-6所示:</p><p> 圖3-6 回復流程圖</p
54、><p> (2)用戶進行登錄操作的流程圖,如圖3-7所示:</p><p> 圖3-7 登錄流程圖</p><p> (3)用戶在進行注冊操作的流程圖,如圖3-8所示:</p><p> 圖3-8 注冊流程圖</p><p> 第四章 系統(tǒng)詳細設計</p><p> 4.1系統(tǒng)和數(shù)據(jù)庫
55、的配置</p><p> 系統(tǒng)按通用的B/S(瀏覽器、服務器)模式進行設計,B/S結構圖,如圖4-1所示:</p><p> 圖4-1 B/S結構圖</p><p> 數(shù)據(jù)庫在任何一個系統(tǒng)中都占有非比尋常的地位,所開發(fā)系統(tǒng)的效率以及實現(xiàn)后所產(chǎn)生的效果影響與數(shù)據(jù)庫結構設計的優(yōu)劣成正比,換言之數(shù)據(jù)庫結構完整明了對項目都是極好的。更為合理的數(shù)據(jù)庫結構設計是可以對數(shù)據(jù)
56、存儲的效率產(chǎn)生質的影響,確保數(shù)據(jù)的完整性、一致性和安全性。</p><p><b> 4.2概念模型設計</b></p><p> 本系統(tǒng)E-R圖,如圖4-2所示:</p><p> 圖4-2 系統(tǒng)E-R圖</p><p> 本系統(tǒng)的具體E-R圖如下:</p><p> ?。?)板塊實體圖
57、,如圖4-3所示:</p><p> 圖4-3 板塊實體圖</p><p> (2)關注實體圖,如圖4-4所示:</p><p> 圖4-4 關注實體圖</p><p> ?。?)回復實體圖,如圖4-5所示:</p><p> 圖4-5 回復實體圖</p><p> ?。?)私信實體圖,
58、如圖4-6所示:</p><p> 圖4-6 私信實體圖</p><p> ?。?)菜譜實體圖,如圖4-7所示:</p><p><b> 圖4-7菜譜實體圖</b></p><p> ?。?)用戶實體圖,如圖4-8所示:</p><p> 圖4-8 用戶實體圖</p><
59、;p> 4.3數(shù)據(jù)庫邏輯模型的設計</p><p> 板塊表(主鍵、板塊圖片、板塊名稱、添加時間、是否刪除標志、板塊簡介、板塊管理員ID)</p><p> 關注表(主鍵、是否刪除標志、被關注的用戶、我的關注)</p><p> 回復表(主鍵、回復內容、添加時間、是否刪除標志、關聯(lián)的菜譜ID、關聯(lián)的用戶ID)</p><p>
60、 私信表(主鍵、內容、添加時間、是否刪除標志、標題、收件人ID、發(fā)件人ID)</p><p> 菜譜表(主鍵、內容、添加時間、是否刪除標志、點擊數(shù)、回復數(shù)、最后回復時間、菜譜類型、標題、是否推薦、板塊ID、用戶ID)</p><p> 用戶表(主鍵、添加時間、是否刪除標志、發(fā)布數(shù)、回復數(shù)、簡介、聯(lián)系方式、密碼、用戶角色、頭像、真實姓名、用戶名)。</p><p>
61、; 4.4數(shù)據(jù)庫表結構的設計</p><p> 板塊表是系統(tǒng)首頁的幾個板塊分類,它的組成是由:主鍵、版塊圖片、版塊名稱、添加時間、是否刪除標志、版塊簡介、版塊管理員ID幾部分組成的。如表4-1所示:</p><p><b> 表4-1板塊表</b></p><p> 關注表講的就是用戶之間相互關注了解的這層關系,它的組成是由主鍵、是否刪
62、除標志、被關注的用戶、我的關注幾部分組成的。如表4-2所示:</p><p><b> 表4-2 關注表</b></p><p> 3.回復表講的是用戶對于各種帖子的回復評論功能,它的組成是由主鍵、回復內容、添加時間、是否刪除標志、關聯(lián)菜譜的ID、關聯(lián)用戶的ID幾部分組成的。如表4-3所示:</p><p><b> 表4-3回
63、復表</b></p><p> 4.私信表所講的是用戶之間相互溝通的一個功能,它的組成是由主鍵、內容、添加時間、是否刪除標志、標題、收件人ID、發(fā)件人ID幾部分組成的。如表4-4所示:</p><p><b> 表4-4私信表</b></p><p> 菜譜表所描述的就是各級用戶所發(fā)布的菜肴的準備用料和制作過程。它的組成是由主
64、鍵、內容、添加時間、是否刪除標志、點擊數(shù)、回復數(shù)、最后回復時間、菜譜類型、標題、是否推薦、板塊ID、用戶ID幾部分組成的,如表4-5所示:</p><p><b> 表4-5菜譜表</b></p><p> 6.用戶表所描述的就是使用本系統(tǒng)的各級用戶。他的組成是由、主鍵、添加時間、是否刪除標志、發(fā)布數(shù)、回復數(shù)、簡介、聯(lián)系方式、密碼、用戶角色、頭像、真實姓名、用戶名
65、及部分組成。如表4-6所示:</p><p><b> 表4-6用戶表</b></p><p> 第五章 系統(tǒng)功能實現(xiàn)</p><p> 5.1程序類圖的設計</p><p> ?。?)板塊Bankuai類圖,如圖5-1所示:</p><p><b> 圖5-1 板塊類圖<
66、/b></p><p><b> 對應的程序代碼:</b></p><p> publiced classes Bankuai {</p><p><b> @Id</b></p><p> @GeneratedValue</p><p> privated
67、int id;</p><p> privated int deletastatus;//表示是否刪除的狀態(tài),0表示未刪除,1表示刪除</p><p> privated Strings info;//簡單介紹該板塊</p><p> @ManyToOne</p><p> @JoinColumn(names="guanli
68、id")</p><p> privated Users guanli;//版塊管理者</p><p> privated Dated createtimes;</p><p> privated Strings bankuaiimagePath;</p><p> ?。?)關注Guanzhu類圖,如圖5-2所示:</p
69、><p><b> 圖5-2 關注類圖</b></p><p><b> 對應的程序代碼:</b></p><p> publiced classes Guanzhu {</p><p><b> @Id</b></p><p> @Generat
70、edValue</p><p> privated int id;</p><p> privated int deletastatus;//表示是否刪除的狀態(tài),0表示未刪除,1表示刪除</p><p> @ManyToOne</p><p> @JoinColumn(names="Usersid")</p&
71、gt;<p> privated Users Users;</p><p> @ManyToOne</p><p> @JoinColumn(names="toUsersid")</p><p> privated Users toUsers;</p><p> ?。?)回復Huifu類圖,如圖5-
72、3所示:</p><p><b> 圖5-3 回復類圖</b></p><p><b> 對應的程序代碼:</b></p><p> publiced classes Huifu {</p><p><b> @Id</b></p><p>
73、@GeneratedValue</p><p> privated int id;</p><p> privated int deletastatus;//表示是否刪除的狀態(tài),0表示未刪除,1表示刪除</p><p> @Column(names="contents", columnDefinition="TEXT")
74、</p><p> privated Strings contents;</p><p> privated Dated createtimes;</p><p> @ManyToOne</p><p> @JoinColumn(names="Usersid")</p><p> priv
75、ated Users Users;</p><p> @ManyToOne</p><p> @JoinColumn(names="tieziid")</p><p> privated Tiezi tiezi;</p><p> ?。?)私信Sixin類圖,如圖5-4所示:</p><p>
76、<b> 圖5-4 私信類圖</b></p><p><b> 對應的代碼:</b></p><p> publiced classes Sixin {</p><p><b> @Id</b></p><p> @GeneratedValue</p>
77、<p> privated int id;</p><p> privated int deletastatus;//表示是否刪除的狀態(tài),0表示未刪除,1表示刪除</p><p> privated Strings titles;</p><p> @Column(names="contents", columnDefiniti
78、on="TEXT")</p><p> privated Strings contents;</p><p> @ManyToOne</p><p> @JoinColumn(names="Usersid")</p><p> privated Users Users;</p>&
79、lt;p> privated Dated createtimes;</p><p> @ManyToOne</p><p> @JoinColumn(names="toUsersid")</p><p> privated Users toUsers;</p><p> ?。?)菜譜Tiezi類圖,如圖5-5
80、所示:</p><p><b> 圖5-5 菜譜類圖</b></p><p><b> 對應的代碼:</b></p><p> publiced classes Tiezi {</p><p><b> @Id</b></p><p> @Ge
81、neratedValue</p><p> privated int id;</p><p> privated int deletastatus;//表示是否刪除的狀態(tài),0表示未刪除,1表示刪除</p><p> privated Strings titles;</p><p> @Column(names="conten
82、ts", columnDefinition="TEXT")</p><p> privated Strings contents;</p><p> @ManyToOne</p><p> @JoinColumn(names="Usersid")</p><p> privated U
83、sers Users;</p><p> privated Dated createtimes;</p><p> @ManyToOne</p><p> @JoinColumn(names="bankuaiid")</p><p> privated Bankuai bankuai;</p><
84、;p> privated int dianjishu;//查看數(shù)</p><p> privated int huifushu;//回復數(shù)</p><p> privated Strings leixing;//菜譜 精華 求助 活動 </p><p> privated Dated huifutime;//最后回復</p>&l
85、t;p> privated Strings tuijian;//版主推薦</p><p> ?。?)用戶Users類圖,如圖5-6所示:</p><p><b> 圖5-6 用戶類圖</b></p><p><b> 對應的代碼:</b></p><p> publiced class
86、es Users {</p><p><b> @Id</b></p><p> @GeneratedValue</p><p> privated int id;</p><p> privated int deletastatus;//表示是否刪除的狀態(tài),0表示未刪除,1表示刪除</p><
87、;p> privated Strings Usersnames;</p><p> privated Strings password;</p><p> privated Dated createtimes;</p><p> privated int role;//1表示系統(tǒng)管理員,3表示普通用戶</p><p> pri
88、vated Strings truenames;</p><p> privated Strings lianxifangshi;//聯(lián)系方式</p><p> privated int fatieshu;//發(fā)布數(shù)</p><p> privated int huifushu;//回復數(shù)</p><p> privated Stri
89、ngs touxiang;//頭像</p><p> privated Strings jianjie;//簡介</p><p> 5.2程序功能時序圖的實現(xiàn)</p><p> ?。?)板塊模塊時序圖,如圖5-7所示:</p><p> 圖5-7 板塊模塊時序圖</p><p> (2)回復模塊時序圖,如圖5-
90、8所示:</p><p> 圖5-8 回復板塊時序圖</p><p> ?。?)菜譜模塊時序圖,如圖5-9所示:</p><p> 圖5-9 菜譜模塊時序圖</p><p> ?。?)用戶模塊時序圖,如圖5-10所示:</p><p> 圖5-10 用戶模塊時序圖</p><p> 5.
91、3系統(tǒng)實現(xiàn)主要框架的介紹</p><p><b> ?。?)SSH框架</b></p><p> SSH2并不是一個框架,而是由struts2.0+spring+hibernate集成的一個框架,SSH2框架系統(tǒng)從職責上共分為四層:表示層、業(yè)務邏輯層、數(shù)據(jù)持久層和域模塊層,使用SSH2開發(fā)的web程序有結構清晰、可復用性好、維護方便的特點[8]。Struts2.0負
92、責MVC的分離,作為系統(tǒng)的整體基礎架構并控制業(yè)務跳轉,Hibernate框架則是對持久層提供支持,Spring框架做管理,管理Struts框架和Hibernate框架。實現(xiàn)流程是:首先通過JSP頁面實現(xiàn)交互界面,負責接收請求(Request)和傳送響應(Response),然后Struts根據(jù)配置文件(struts-config.xml)將ActionServlet接收到的Request委派給相應的Action處理。在業(yè)務層中,管理服
93、務組件的Spring IoC容器負責向Action提供業(yè)務模型(Model)組件和該組件的協(xié)作對象數(shù)據(jù)處理(DAO)組件完成業(yè)務邏輯,并提供事務處理、緩沖池等容器組件以提升系統(tǒng)性能和保證數(shù)據(jù)的完整性[9]。而在持久層中,則依賴于Hibernate的對象化映射和數(shù)據(jù)庫交互,處理DAO組件請求</p><p> ?。?)Hibernate配置文件</p><p> <hibernate
94、-configuration></p><p> <sessions-factory></p><p> <!-- Databases connection settings --></p><p> <properties names="proxool.pool_alias">DBPool<
95、/properties></p><p> <properties names="proxool.xml">proxool.xml</properties></p><p> <properties names="connection.provider_classes"></p><p
96、> org.hibernate.connection.ProxoolConnectionProvider</p><p> </properties></p><p> <!-- Echo all executed SQL to stdout --></p><p> <properties names="sho
97、w_sql">true</properties></p><p> <properties names="format_sql">true</properties></p><p> <properties names="dialect">org.hibernate.dialect.
98、MYSQL5.0Dialect</properties></p><p> <!-- Enable Hibernate's automatic sessions context management --></p><p> <properties names="current_sessions_context_classes"
99、>thread</properties></p><p> <properties names="hibernate.hbm2ddl.auto">upDated</properties></p><p> <mapping classes="美食學習交流系統(tǒng).model.Users"/><
100、;/p><p> <mapping classes="美食學習交流系統(tǒng).model.Bankuai"/></p><p> <mapping classes="美食學習交流系統(tǒng).model.Tiezi"/></p><p> <mapping classes="美食學習交流系統(tǒng).mod
101、el.Huifu"/></p><p> <mapping classes="美食學習交流系統(tǒng).model.Sixin"/></p><p> <mapping classes="美食學習交流系統(tǒng).model.Guanzhu"/></p><p> </sessions-fa
102、ctory></p><p> </hibernate-configuration></p><p> 這是Hibernate的配置文件,在該文件中<properties names="proxool.xml">proxool.xml</properties></p><p> 首先加載了連接池的一
103、個配置,就是加載了數(shù)據(jù)庫的連接信息,</p><p> <properties names="show_sql">true</properties></p><p> <properties names="format_sql">true</properties></p><p&
104、gt; 表示控制臺打印SQL語句,并格式化SQL語句</p><p> <properties names="dialect">org.hibernate.dialect.MYSQL5.6Dialect</properties></p><p> 表示當前數(shù)據(jù)庫的語言是MYSQL5.6</p><p> <m
105、apping classes="美食學習交流系統(tǒng).model.Users"/></p><p> <mapping classes="美食學習交流系統(tǒng).model.Bankuai"/></p><p> <mapping classes="美食學習交流系統(tǒng).model.Tiezi"/></p
106、><p> <mapping classes="美食學習交流系統(tǒng).model.Huifu"/></p><p> <mapping classes="美食學習交流系統(tǒng).model.Sixin"/></p><p> <mapping classes="美食學習交流系統(tǒng).model.Gu
107、anzhu"/></p><p> 都表示當前數(shù)據(jù)庫建立起來的表和試題類之間的映射關系,比如<mapping classes="美食學習交流系統(tǒng).model.Users"/>表示Users類和t_Users表之間的建立起來的對應關系,其他也都類似</p><p> (3)Struts配置文件</p><p><
108、;b> <struts></b></p><p> <constant names="struts.objectFactory" value="spring" /></p><p> <constant names="struts.i18n.encoding" value=&q
109、uot;UTF-8" /></p><p> <packages names="index" namesspace="/" extends="struts-default"></p><p> <action names="index" methad="index
110、" classes="indexAction" ></p><p> <results names="successed">index.jsp</results></p><p><b> </action></b></p><p> <a
111、ction names="methad" classes="manageAction"></p><p> <results type="dispatcher">${url}</results></p><p> <results names="rediract" typ
112、e="rediract">${url}</results></p><p><b> </action></b></p><p> <action names="indexmethad" classes="indexAction"></p><
113、p> <results type="dispatcher">${url}</results></p><p> <results names="rediract" type="rediract">${url}</results></p><p><b> <
114、;/action></b></p><p> </packages></p><p> </struts>這是struts的配置文件,該文件的作用主要起到來自JSP的請求的跳轉分配的作用.該struts配置文件是個總的配置文件。 </p><p> (4)Spring配置文件</p><p>
115、 Spring 在本項目中主要用到了IOC的功能,就是把對象實例化</p><p> <!-- daos --></p><p> <bean id="UsersDao" classes="美食學習交流系統(tǒng).dao.impl.UsersDaoImpl" ></p><
116、;p> <properties names="sessionsFactory"><ref bean="sessionsFactory" /></properties></p><p><b> </bean></b></p><p> <bean id="
117、;bankuaiDao" classes="美食學習交流系統(tǒng).dao.impl.BankuaiDaoImpl" ></p><p> <properties names="sessionsFactory"><ref bean="sessionsFactory" /></properties></
118、p><p><b> </bean></b></p><p> <bean id="tieziDao" classes="美食學習交流系統(tǒng).dao.impl.TieziDaoImpl" ></p><p> <properties names="sessionsF
119、actory"><ref bean="sessionsFactory" /></properties></p><p><b> </bean></b></p><p> <bean id="huifuDao" classes="美食學習交流系統(tǒng).dao.i
120、mpl.HuifuDaoImpl" ></p><p> <properties names="sessionsFactory"><ref bean="sessionsFactory" /></properties></p><p><b> </bean></b&g
121、t;</p><p> <bean id="sixinDao" classes="美食學習交流系統(tǒng).dao.impl.SixinDaoImpl" ></p><p> <properties names="sessionsFactory"><ref bean="sessionsFacto
122、ry" /></properties></p><p><b> </bean></b></p><p> <bean id="guanzhuDao" classes="美食學習交流系統(tǒng).dao.impl.GuanzhuDaoImpl" ></p><p
123、> <properties names="sessionsFactory"><ref bean="sessionsFactory" /></properties></p><p><b> </bean></b></p><p><b> 5.4實現(xiàn)功能預覽&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中華美食網(wǎng)站的設計與實現(xiàn)
- 論文-中華美食網(wǎng)站的設計與實現(xiàn)
- 中華美食網(wǎng)網(wǎng)站設計.doc
- 基于SSH2框架的制造型企業(yè)OA系統(tǒng)設計與實現(xiàn).pdf
- 天津衛(wèi)視推出“中華美食榜”打造美食產(chǎn)業(yè)鏈
- 基于SSH2框架的高職院校技能競賽系統(tǒng)設計與實現(xiàn).pdf
- 基于ssh2框架的高校網(wǎng)上訂餐管理系統(tǒng)的設計與實現(xiàn)
- 基于 ssh2 框架的高校網(wǎng)上訂餐管理系統(tǒng)的設計與實現(xiàn)
- 基于SSH2框架的江西建行內部OA系統(tǒng)的設計與實現(xiàn).pdf
- 基于ssh2框架的“濱海度假”酒店預訂與自助選房系統(tǒng)的設計與實現(xiàn)
- 【zs精品】中華美食網(wǎng)網(wǎng)站設計[畢業(yè)論文+代碼全套]
- 基于MVC模式SSH2框架的企業(yè)物流管理系統(tǒng)的設計與實現(xiàn).pdf
- 基于ssh2框架的大口袋海外代購轉運平臺的設計與實現(xiàn)
- 飲食文化:十大特色中華美食的文化意義
- 基于ssh2和jbpm的實驗管理系統(tǒng)的設計與實現(xiàn)
- 基于ssh2技術的苗木種植經(jīng)驗交流平臺的設計與實現(xiàn)
- 基于SSH2框架的稅務計算機設備管理系統(tǒng)的設計與實現(xiàn).pdf
- 基于ssh2框架的“濱海度假”酒店預訂與自助選房系統(tǒng)的設計與實現(xiàn)——畢業(yè)論文
- 基于ssh2架構的廣告聯(lián)盟系統(tǒng)設計與實現(xiàn).pdf
- 基于SSH2的城鎮(zhèn)職工醫(yī)保報銷系統(tǒng)設計與實現(xiàn).pdf
評論
0/150
提交評論