版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 本科畢業(yè)論文(設(shè)計)</p><p> 題 目: 基于SSH框架的論壇設(shè)計與實現(xiàn)</p><p> 院 系: 計算機(jī)科學(xué)系 </p><p> 專 業(yè): 計算機(jī)科學(xué)與技術(shù) </p><p> 姓 名:
2、 </p><p> 學(xué) 號: </p><p> 指導(dǎo)教師: </p><p> 教師職稱: </p><p> 填寫日期:201
3、2 年 5 月 1 日</p><p><b> 摘要</b></p><p> 當(dāng)今社會正處在網(wǎng)絡(luò)時代,信息化大潮席卷全球,網(wǎng)絡(luò)正以前所未有的速度在我國普及開來。網(wǎng)站以其獨特的優(yōu)勢在信息化的過程中占有重要的一席。為了方便信息的交流,在結(jié)合JAVA和SSH 技術(shù)之下開發(fā)了這個快捷、界面友好的交流系統(tǒng),實現(xiàn)了一個功能相對齊全的論壇系統(tǒng),網(wǎng)友可以自由地提
4、出問題以及幫助他人解決問題,或者交流經(jīng)驗。</p><p> 論壇在struts+spring+hibernate,struts負(fù)責(zé)表示層,spring負(fù)責(zé)業(yè)務(wù)邏輯層,hibernate負(fù)責(zé)數(shù)據(jù)持久層。論壇將采用B/S體系結(jié)構(gòu),人們通過瀏覽器就可以訪問教學(xué)網(wǎng)站的主頁,保證的服務(wù)器的安全。數(shù)據(jù)庫采用免費,小巧,易用的sql數(shù)據(jù)庫。該論壇功能較齊全,在這里可以自由地發(fā)表自己的觀點和對論壇的主題發(fā)表意見,我們還可以對
5、網(wǎng)友的問題及時地解決,獲取對自己有用的知識。該論壇還有一些特殊的功能,如在線人員顯示、強(qiáng)大的搜索功能。本網(wǎng)站嚴(yán)格按照軟件項目開發(fā)的流程進(jìn)行開發(fā),對于網(wǎng)站開發(fā)的可行性分析、需求分析、概要設(shè)計、詳細(xì)設(shè)計以及對網(wǎng)站的測試與維護(hù)都有詳細(xì)的論述和實現(xiàn)過程。</p><p> 本套論壇的優(yōu)點在于它具有強(qiáng)大的可擴(kuò)展性和可維護(hù)性,非常適合網(wǎng)民創(chuàng)建自己的中小型BBS論壇!</p><p> 關(guān)鍵詞:BB
6、S ,S.S.H(Struts ,Hibernate ,Spring),JAVA , SQL ,JSP</p><p><b> Abstract</b></p><p> today's society is in network era, information tide sweeping the globe, the Internet is at a
7、n unprecedented rate in our country popularity to spread. Web site with its unique advantages in the process of information occupies the important a seats. In order to facilitate information exchange, in combination with
8、 JAVA and S.S.H technology developed this quick, under a friendly interface communication system, realize a relatively complete BBS system function, this can be free to put forward questio</p><p> BBS in St
9、ruts + Hibernate + Spring expand Struts on the basis of frame, with today's mainstream web development techniques JSP language development. BBS will use the B/S architecture, people through the browser can visit the
10、home page of the teaching website, ensure the safety of the server. Database using free, small, easy mysql database. This BBS function is more complete, here will be free to speak their minds and the theme of the BBS of
11、opinions, we also can solve the problems in time, to ob</p><p> The set of the BBS's advantage is that it has strong expansibility and maintainability, very suitable for Internet users to create their o
12、wn small and medium-sized BBS BBS! </p><p> Keywords:BBS ,SSH(Struts ,Hibernate ,Spring),JAVA , SQL ,JSP</p><p><b> 目 錄</b></p><p> 摘要...............................
13、...................................................................................................2</p><p> Abstract…………………………...………………...…………………………………..3</p><p> 目 錄…………….………………………………………………
14、…………………….4</p><p> 第一章系統(tǒng)概述……...…….…………………………………...……….…….……….6</p><p> 1.1總體概述……...………………………………………………………...……...6</p><p> 1.2開發(fā)背景……………………………………………………....……..….….….7</p>&l
15、t;p> 1.3開發(fā)目的……...……………………………………..…………………….…...8</p><p> 第二章系統(tǒng)分析……......…...……...……………...……….....……………..…………9</p><p> 2.1技術(shù)可行性分析……...………………………………………………………..9</p><p> 2.1.1開發(fā)語言
16、綜述…………………………………………………………...9</p><p> 2.1.2 S.S.H框架優(yōu)點………………………………………………………... 10</p><p> 2.1.3系統(tǒng)層次設(shè)計………………………………………...…………………13</p><p> 2.1.4 技術(shù)可行性綜述……………………………………..………………...14<
17、;/p><p> 2.2時間可行性(項目開發(fā)計劃)…………………………………………….…….14</p><p> 2.3系統(tǒng)需求分析…………………………………………………………...……..14</p><p> 2.3.1 系統(tǒng)開發(fā)運(yùn)行環(huán)境………………………………………………..…...14</p><p> 2.3.2功能描述………
18、………………………………………………………...14</p><p> 2.3.3 數(shù)據(jù)流程……………………………………………………………….16</p><p> 第三章系統(tǒng)設(shè)計……………………………………………………………………….19</p><p> 3.1數(shù)據(jù)庫設(shè)計……………………….…………………………………………...19</p>
19、<p> 3.1.1概念模型設(shè)計(E-R圖)………………………………..………………..19</p><p> 3.1.2數(shù)據(jù)庫表及關(guān)系建立…………………………………..………………21</p><p> 3.1.3詳細(xì)數(shù)據(jù)庫結(jié)構(gòu)設(shè)計…………………………………..………………21</p><p> 3.2系統(tǒng)概要設(shè)計…………………………………………
20、….…….……………..24</p><p> 3.2.1功能模塊設(shè)計……………………………………………..……………24</p><p> 3.2.2系統(tǒng)界面設(shè)計……………………………………………..……………27</p><p> 3.2.3系統(tǒng)的組件設(shè)計…………………………………………..……………29</p><p> 第四章
21、系統(tǒng)實現(xiàn)……………………………………………………………………….32</p><p> 4.1系統(tǒng)框架實現(xiàn)…………………………………………………….…………...32</p><p> 4.1.1底層數(shù)據(jù)庫的建立……………………………………………………..32</p><p> 4.1.2持久化層的建立(hibernate)…………………………………………..
22、..33</p><p> 4.1.3業(yè)務(wù)邏輯層的建立……………………………………………………..33</p><p> 4.1.4表示層的建立………………………………………………………..…35</p><p> 4.2系統(tǒng)功能模塊實現(xiàn)…………………………………………..…………..…….35</p><p> 4.2.1會員模塊實
23、現(xiàn)…………………………………………………………...38</p><p> 4.2.2帖子模塊實現(xiàn)…………………………………………………………...40</p><p> 4.2.3后臺管理模塊實現(xiàn)……………………………………………………...43</p><p> 4.3系統(tǒng)設(shè)計總結(jié)………………………………………………...……………….44</p&g
24、t;<p> 第五章系統(tǒng)的調(diào)試與測試……………………………………………….……………45</p><p> 5.1測試概述……………………………………………………………………….45</p><p> 5.1.1軟件測試的目的………………………………………………………...45</p><p> 5.1.2軟件測試的任務(wù)………………………………
25、………………………...45</p><p> 5.1.3測試環(huán)境………………………………………………………………...46</p><p> 5.2單元測試…………………………………………………………..…..……… 46</p><p> 5.2.1黑盒測試………………………………………………………………...46</p><p>
26、 5.2.2白盒測試………………………………………………………………...47</p><p> 5.2.3模塊接口測試…………………………………………………………...48</p><p> 5.3集成測試…………………………………………………………..…..……….49</p><p> 5.3.1自頂向下集成…………………………………………………………
27、...49</p><p> 5.3.2確認(rèn)測試標(biāo)準(zhǔn)…………………………………………………………...49</p><p> 第六章結(jié)論………………………………………………………………….…………50</p><p> 致 謝………………………………………………………………………………………………51</p><p> 參考文獻(xiàn)……
28、………………………………………………………………….………51</p><p> 第 1 章 系統(tǒng)概述</p><p><b> 1.1總體概述</b></p><p> 進(jìn)入二十一世紀(jì),計算機(jī)技術(shù)迅速向著網(wǎng)絡(luò)化、集成化方向發(fā)展。傳統(tǒng)的單機(jī)版應(yīng)用軟件正在逐漸退出舞臺,取而代之的是支持網(wǎng)絡(luò)、支持多種數(shù)據(jù)信息(多媒體)的新一代網(wǎng)絡(luò)版應(yīng)用軟件,
29、而目前網(wǎng)絡(luò)版軟件中似乎存在著兩種不同的趨勢,一種是稱為客戶端——服務(wù)器的C/S結(jié)構(gòu),這類軟件具有結(jié)構(gòu)嚴(yán)謹(jǐn),運(yùn)行效率高,服務(wù)器端壓力小,安全性好等優(yōu)點,被廣泛運(yùn)用于局域網(wǎng)中。而另一種,也是本畢業(yè)設(shè)計所采用的,是稱為瀏覽器——服務(wù)器的B/S結(jié)構(gòu),它的特點是在客戶端直接采用了功能強(qiáng)大的瀏覽器軟件作為界面,其優(yōu)點在于軟件開發(fā)效率高,客戶端不受操作平臺的限制、也不受地域的限制,網(wǎng)絡(luò)傳輸量少,即適用于局域網(wǎng),更適用于Internet,而且投資小、見
30、效快,用戶可以不必進(jìn)行服務(wù)器方面的投資,而是去租用,甚至是免費使用ISP的服務(wù)器資源,因而受到越來越多中小型單位的青睞。</p><p> 隨著Internet技術(shù)的不斷發(fā)展,以及用戶群爆炸性地增長,網(wǎng)絡(luò)不再僅僅是信息的被動獲取來源,更成為人們探討間題、交換觀點的場所,其中,網(wǎng)上論壇扮演了極其重要的角色,隨著時間的推移,論壇站點中積存了豐富的信息資源,不但有各類技術(shù)資料和新聞文檔,還包含著用戶的判斷和評論,論壇
31、站點己成為Web信息庫的重要組成部分,自網(wǎng)上論壇誕生20多年以來,隨著Web技術(shù)的發(fā)展,己經(jīng)由原來簡單的電子公告板系統(tǒng)發(fā)展為功能豐富的網(wǎng)上論壇和虛擬社區(qū)模式。各種論壇隨著網(wǎng)絡(luò)迅速發(fā)展,幾乎充實著生活工作的每一個方面,無論是商界、政界,還是娛樂界,都有各種論壇?;ヂ?lián)網(wǎng)正在融入我們的生活,網(wǎng)絡(luò)提供給我們的不只是一個獲取信息的來源,而且還是一個可以相互交流的空間,網(wǎng)上論壇正是一種供人們進(jìn)行交流的網(wǎng)絡(luò)空間, 影響和改變著我們的生活。</p
32、><p><b> 1.2開發(fā)背景</b></p><p> 1978年在美國芝加哥開發(fā)出一套基于8080芯片的CBBS/Chicago (Computerized Bulletin Board System/Chicago),此乃最早的一套BBS系統(tǒng)。之后隨著蘋果機(jī)的問世,開發(fā)出基于蘋果機(jī)的Bulletin Board System和大眾信息系統(tǒng)(Peoples M
33、essage System)2種BBS系統(tǒng)。1981年IBM個人計算機(jī)誕生時,并沒有自己的BBS系統(tǒng)。直到1982年,Buss Lane 才用Basic語言為IBM個人計算機(jī)編寫了一個原型程序。其后經(jīng)過幾番增修,終于在1983年通過Capital PC User Group(CPCUG)的Communication Special Interest Group會員的努力,改寫出了個人計算機(jī)系統(tǒng)的BBS。經(jīng)Thomas Mach整理后,終
34、于完成了個人計算機(jī)的第1版BBS系統(tǒng)——RBBS-PC。這套BBS系統(tǒng)的最大特色是其源程序全部公開,有利于日后的修改和維護(hù),因此后來在開發(fā)其他的BBS系統(tǒng)時都以此為框架,所以RBBS-PC贏得了BBS鼻祖的美稱。</p><p> 大約是從1991年開始,國內(nèi)開始了第一個BBS站。經(jīng)過長時間的發(fā)展,直到1995年,隨著計算機(jī)及其外設(shè)的大幅降價,BBS才逐漸被人們所認(rèn)識。1996年更是以驚人的速度發(fā)展起來。國內(nèi)的
35、BBS站,按其性質(zhì)劃分,可以分為2種:一種是商業(yè)BBS站,如新華龍訊網(wǎng);另一種是業(yè)余BBS站,如天堂資訊站。由于使用商業(yè)BBS站要交納一筆費用,而商業(yè)站所能提供的服務(wù)與業(yè)余站相比,并沒有什么優(yōu)勢,所以其用戶數(shù)量不多。多數(shù)業(yè)余BBS站的站長,基于個人關(guān)系,每天都互相交換電子郵件,漸漸地形成了一個全國性的電子郵件網(wǎng)絡(luò)China FidoNet(中國惠多網(wǎng))。于是,各地的用戶都可以通過本地的業(yè)余BBS站與遠(yuǎn)在異地的網(wǎng)友互通信息。這種跨地域電子
36、郵件交流正是商業(yè)站無法與業(yè)余站相抗衡的根本因素。由于業(yè)余BBS站擁有這種優(yōu)勢,所以使用者都更樂意加入。這里“業(yè)余”2字,并不是代表這種類型的BBS站的服務(wù)和技術(shù)水平是業(yè)余的,而是指這類BBS站的性質(zhì)。一般BBS站都是由志愿者開發(fā)的。他們付出的不僅是金錢,更多的是精力。其目的是為了推動中國計算機(jī)網(wǎng)絡(luò)的健康發(fā)展,提高廣大計算機(jī)用戶的應(yīng)用水平</p><p> 國內(nèi)的BBS站,大多數(shù)還是大型綜合性BBS站。隨著計算機(jī)
37、的普及,特別是寬帶的普及,BBS的活動將會進(jìn)一步高漲。但是,隨之而來對專注于領(lǐng)域方面的BBS將會慢慢增加需求。盡管BBS站臺的數(shù)量在不斷增長,但BBS的發(fā)展過程,也出現(xiàn)了一些問題。由于國內(nèi)使用的BBS架站軟件,都是從國外引進(jìn)的,因此沒有必要的中文說明。雖然一些熱心的站長翻譯了一些資料,但是僅靠這些是遠(yuǎn)遠(yuǎn)不夠的。另外,有些站臺的設(shè)立是相互抄襲,所以在結(jié)構(gòu)上難免有雷同之處。 </p><p> 而國內(nèi)自己開發(fā)的BB
38、S基本上都是處于最原始的JSP MODEL1模式, 這種模式是控制層與表示層合二為一,雖然開發(fā)簡單,但是擁有很差的擴(kuò)展性,可維護(hù)性,這樣極大的限制了BBS站點的擴(kuò)展,</p><p> 于是在這種情況下,本文提出了目前比較流行的,基于MVC模式的SSH框架(Sturts+Spring+hibernate)的BBS論壇,本套論壇的優(yōu)點在于它具有強(qiáng)大的可擴(kuò)展性和可維護(hù)性,非常適合網(wǎng)民創(chuàng)建自己的中小型BBS論壇!&l
39、t;/p><p><b> 1.3開發(fā)目的</b></p><p> 當(dāng)今社會正處于網(wǎng)絡(luò)時代,信息化大潮席卷全球,網(wǎng)絡(luò)正也前所未有的速度在我國普及開來。網(wǎng)站以其獨特的優(yōu)勢在信息化的過程中占有重要的一席。為了方便信息交流,在結(jié)合java和ssh技術(shù)之下開發(fā)了這個快捷、界面友好的交流系統(tǒng),實現(xiàn)了一個功能相對齊全的論壇系統(tǒng),網(wǎng)友可以自由的提出問題也及幫助他人解決問題,或者交
40、流經(jīng)驗。</p><p> 論壇在Struts + hibernate + spring擴(kuò)展Structs框架的基礎(chǔ)上,用今天主流的網(wǎng)站開發(fā)技術(shù)jsp語言進(jìn)行開發(fā)。論壇將采用B/S體系結(jié)構(gòu),人們通過瀏覽器就可也訪問網(wǎng)站的主頁,保證的服務(wù)器的安全。該論壇功能較全,在這里可以自由地發(fā)表自己的觀點和對論壇主題發(fā)表意見,我們還可也對網(wǎng)友的問題進(jìn)行及時的解決,獲取對自己有用的知識,該論壇還有一個特殊功能,如在線人數(shù)顯示、
41、強(qiáng)大的搜索功能。本網(wǎng)站嚴(yán)格按照軟件項目開發(fā)的流程進(jìn)行開發(fā),對于網(wǎng)站開發(fā)的可行性分析、需求分析、概要設(shè)計、詳細(xì)設(shè)計以及對網(wǎng)站的測試與維護(hù)都有詳細(xì)的論述和實現(xiàn)過程。</p><p> 第 2 章 系統(tǒng)分析</p><p> 2.1技術(shù)可行性分析</p><p> 2.1.1 開發(fā)語言綜述</p><p> 本系統(tǒng)是基于面向?qū)ο笏枷氲腏AV
42、A語言中J2EE平臺進(jìn)行編寫,J2EE平臺具有以下優(yōu)點</p><p> 1.簡化結(jié)構(gòu):J2EE平臺支持簡化的、基于組件開發(fā)模型,由于J2EE基于Java編程語言和J2SE平臺,它提供了編寫一次,隨處運(yùn)行的可移植性,遵循J2EE標(biāo)準(zhǔn)的所有服務(wù)器都支持該模型。EJB組件使編寫應(yīng)用程序更為簡單。盡管EJB體系結(jié)構(gòu)復(fù)雜,但應(yīng)用程序開發(fā)人員一般都必再編寫訪問系統(tǒng)服務(wù)的代碼,EJB容器會實現(xiàn)系統(tǒng)級的服務(wù),例如,事務(wù)、安
43、全性等。 另外,J2EE還支持異構(gòu)環(huán)境?;贘2EE的應(yīng)用程序不依賴任何特定操作系統(tǒng)、中間件或硬件,因此,設(shè)計合理的基于J2EE的程序只需開發(fā)一次就可以部署到各種平臺,這在典型的異構(gòu)企業(yè)算環(huán)境中是十分關(guān)鍵的。J2EE標(biāo)準(zhǔn)還允許客戶訂購與J2EE兼容的第三方的現(xiàn)成組件,把其部署到異構(gòu)環(huán)境中,節(jié)省了由自己制訂整個方案所需的費用。</p><p> 2. 提
44、高開發(fā)效率:由于組件技術(shù)的使用,可以按照開發(fā)人員的技能對應(yīng)用程序開發(fā)進(jìn)行分工,并行開發(fā),提供整體開發(fā)效率。例如:圖形設(shè)計師創(chuàng)建JSP模板,商業(yè)邏輯由該領(lǐng)域的專家完成,JSP頁面和EJB由Java工程師完成,應(yīng)用程序的裝配和部署由團(tuán)隊中其他的成員完成,其中許多工作可以同時進(jìn)行,有助于加速應(yīng)用程序的開發(fā)。</p><p> 3.可移植性強(qiáng):除了Java語言固有的可移植性外,EJB體系結(jié)構(gòu)在Bean和支持該Bean的
45、容器之間提供了一套標(biāo)準(zhǔn)化的應(yīng)用程序編程接口,這使開發(fā)人員能夠?qū)ean從一種操作環(huán)境移植到另一種操作環(huán)境,而無需重新編寫其源代碼。</p><p> 4.重用性好:由于在EJB模型中,各個軟件組件都是嚴(yán)格分離的,因此,可以從現(xiàn)有的軟件組件裝配出服務(wù)器端應(yīng)用程序,這與從現(xiàn)有的JavaBean可以裝配出客戶端應(yīng)用程序一樣,使軟件能夠重用。</p><p> 5.易于維護(hù):基于組件的設(shè)計簡化
46、了應(yīng)用程序的維護(hù)。由于組件可以被獨立地更新和替代,通過更新應(yīng)用程序中特定的組件,新的功能可以被很容易地增加。</p><p> 6.可伸縮性:企業(yè)必須要選擇一種服務(wù)器端平臺,以便滿足那些在它們系統(tǒng)上進(jìn)行商業(yè)動作大批新客戶。基于J2EE平臺的應(yīng)用程序可被部署到各種操作系統(tǒng)上,例如,可被部署到高端UNIX或其他的大型機(jī)系統(tǒng)上。J2EE領(lǐng)域的供應(yīng)商提供了更為廣泛的負(fù)載平衡策略,能消除系統(tǒng)中的瓶頸,允許多臺服務(wù)器集成部
47、署,實現(xiàn)可高度伸縮的系統(tǒng),滿足未來商業(yè)應(yīng)用的需要。</p><p> 7.被廣泛接受:主要的IT供應(yīng)用商都采納EJB體系結(jié)構(gòu),不同供應(yīng)商的產(chǎn)品只要符合EJB體系結(jié)構(gòu),就都是可互操作的。</p><p> 2.1.2 S.S.H框架的優(yōu)點</p><p> S.S.H框架是J2EE應(yīng)用中struts+spring+hibernate三大免費開源框架的結(jié)合使用,
48、它可以看成工具,也是中間件。他是用來提高我們的開發(fā)效率,提高我們軟件產(chǎn)品的可維護(hù)性、可擴(kuò)展性乃至敏捷性的。他們里面有很多優(yōu)秀的設(shè)計理念及模式應(yīng)用。比如,struts屬于MVC框架,關(guān)鍵是要了解MVC的概念及大致原理;而hibernate屬于ORM系統(tǒng),屬于持久層的解決方案,同樣需要對ORM的概念及原理有一個總體的了解。而spring屬于應(yīng)用程序框架,其核心是IOC容器以及AOP,Spring中還集成了很多適用東西,比如對JDBC的封裝、
49、自己的MVC、對動態(tài)語言的簡潔訪問等,</p><p> 它由以下3個框架構(gòu)成:</p><p> 1.Struts框架</p><p> Struts是Apache組織的一個開放源碼項目。Struts是一個比較好的MVC框架,提供了對開發(fā)MVC系統(tǒng)的底層支持,它采用的主要技術(shù)是Servlet,JSP和Custom tag library。其基本構(gòu)成如圖2.1
50、所示。</p><p> 圖2.1 Struts框架工作流程</p><p> 2.Spring框架</p><p> Spring 的核心是個輕量級(Lightweight)的容器(Container),它是實現(xiàn)IoC(Inversion of Control)容器、非侵入性(No intrusive)的框架,并提供AOP(Aspect-oriented p
51、rogramming)概念的實現(xiàn)方式,提供對持久層(Persistence)、事務(wù)(Transaction)的支持,提供MVC Web 框架的實現(xiàn),并對一些常用的企業(yè)服務(wù)API(Application Interface)提供一致的模型封裝,是一個全方位的應(yīng)用程序框架(Application framework),除此之外,對于現(xiàn)存的各種框架(Struts、JSF、Hibernate 等),Spring 也提供了與它們相整合的方案。&l
52、t;/p><p> Spring框架由以下7個部分組成</p><p> 圖2.2 Spring框架構(gòu)成</p><p> 3.Hibernate框架</p><p> Hibernate 是一個開放源碼的 ORM 持久層框架。作為優(yōu)秀的持久層框架實現(xiàn),Hibernate 框架提供了強(qiáng)大、高性能的對象到關(guān)系型數(shù)據(jù)庫的持久化服務(wù),開發(fā)人員可
53、以使用面向?qū)ο蟮脑O(shè)計進(jìn)行持久層開發(fā)。簡單的說,Hibernate 只是一個將持久化類與數(shù)據(jù)庫表相映射的工具,每個持久化類實例均對應(yīng)于數(shù)據(jù)庫表中的一個數(shù)據(jù)行而已。用戶只需直接使用面向?qū)ο蟮姆椒ú僮鞔顺志没悓嵗纯赏瓿蓪?shù)據(jù)庫表數(shù)據(jù)的插入、刪除、修改、讀取等操作。</p><p> 圖2.3 Hibernate框架</p><p> 2.1.3 系統(tǒng)層次設(shè)計</p>&l
54、t;p> 系統(tǒng)很據(jù)S.S.H框架的特點,決定使用四層結(jié)構(gòu),這樣做的優(yōu)點是</p><p> (1)可以分層開發(fā),訪問數(shù)據(jù)庫與業(yè)務(wù)邏輯實現(xiàn)能夠分開。</p><p> (2)提高代碼的復(fù)用</p><p> 圖2.4 BBS系統(tǒng)的分層結(jié)構(gòu)</p><p> 2.1.4 技術(shù)可行性綜述</p><p>
55、綜上所述,這些成熟的框架和優(yōu)秀的設(shè)計思想,為系統(tǒng)建設(shè)提供了技術(shù)條件。計算機(jī)等基礎(chǔ)設(shè)施的更新?lián)Q代也緊跟潮流的發(fā)展,這就為開發(fā)系統(tǒng)提供了堅實基礎(chǔ)。</p><p> 2.2時間可行性(項目開發(fā)計劃)</p><p> 本系統(tǒng)的難點在于三大框架的結(jié)合使用,但目前有很多優(yōu)秀的書籍可供參閱,且參加過類似項目的開發(fā),預(yù)計本系統(tǒng)在規(guī)定時間內(nèi),基本能夠完成.</p><p>&
56、lt;b> 開發(fā)計劃如下:</b></p><p> 11年12月—12年4月 收集技術(shù)資料,進(jìn)行技術(shù)儲備,完成開題報告</p><p> 12年4月—12年5月 根據(jù)項目要求進(jìn)行bbs設(shè)計,測試bbs各個功能模塊</p><p> 12年5月 完成bbs,打包,發(fā)布,撰寫畢業(yè)論文,答辯。</p><p>
57、2.3 系統(tǒng)需求分析</p><p> 2.3.1 系統(tǒng)開發(fā)運(yùn)行環(huán)境</p><p> 鑒于系統(tǒng)的開發(fā)語言和數(shù)據(jù)庫,采用如下的開發(fā)環(huán)境</p><p> 開發(fā)環(huán)境: Windows xp TomCat6.8 JDK1.6</p><p> 硬件實現(xiàn): PentiumⅣ2.4G 2G內(nèi)存 500G硬盤</p><
58、p> 開發(fā)語言: Java</p><p> 數(shù) 據(jù) 庫: SQL</p><p> 開發(fā)工具: NetBeans7.1 </p><p> 預(yù)期成果: 一個可擴(kuò)展的基于MVC模式的 BBS論壇</p><p> 2.3.2 功能描述</p><p> 對于訪問論壇的用戶,可分為注冊會員和為注冊
59、的臨時用戶,這兩種用戶有著不同的權(quán)限,比如臨時用戶只能對帖子進(jìn)行查看,而注冊會員除了查看帖子之外,還可以發(fā)帖,回復(fù),查找用戶,并且可以對自己的注冊資料進(jìn)行修改等等,</p><p><b> 系統(tǒng)的用例圖如下:</b></p><p> 圖2.5 系統(tǒng)用例圖</p><p> 本系統(tǒng)是一套網(wǎng)上交流的BBS軟件,根據(jù)用戶的需要和實際的管理條
60、件,應(yīng)由用戶功能實現(xiàn),帖子功能實現(xiàn)和后臺管理等幾個模塊所構(gòu)成,用戶可以對一些數(shù)據(jù)進(jìn)行查找和修改,并且注冊的用戶可以對帖子進(jìn)行特定的操作,而管理員可以對用戶和帖子進(jìn)行相關(guān)的管理.</p><p> 鑒于本系統(tǒng)的性質(zhì),系統(tǒng)應(yīng)該實現(xiàn)以下功能.</p><p><b> 1.用戶功能實現(xiàn)</b></p><p><b> (1).用戶的
61、登錄</b></p><p><b> (2).用戶的注冊</b></p><p><b> (3).用戶的查找</b></p><p> (4).用戶資料的修改</p><p><b> 2.帖子功能實現(xiàn)</b></p><p>&
62、lt;b> (1).帖子的發(fā)表</b></p><p><b> (2).帖子的回復(fù)</b></p><p><b> (3).帖子的查找</b></p><p><b> 3.后臺管理</b></p><p><b> (1).用戶的管理
63、</b></p><p><b> (2).帖子的管理</b></p><p> (3).論壇信息的管理</p><p><b> (4).圖片的管理</b></p><p> 2.3.3 數(shù)據(jù)流程</p><p> 本系統(tǒng)是為了提供給廣大用戶一個網(wǎng)上交
64、流的平臺,所以論壇的流程是以用戶為中心進(jìn)行的.</p><p> 數(shù)據(jù)流圖是一種能全面地描述信息系統(tǒng)邏輯模型的主要工具,它可以用少數(shù)幾種符號綜合地反映出信息在系統(tǒng)中的流動、處理和存儲情況。數(shù)據(jù)流圖具有以下兩個特性:</p><p> (1)抽象性:表現(xiàn)在它完全舍去了具體的物質(zhì),只剩下數(shù)據(jù)的流動、加工處理與存儲。</p><p> (2)概括性:表現(xiàn)在它可以把信
65、息中的各種不同業(yè)務(wù)處理過程聯(lián)系起來,形成一個整體。</p><p> 數(shù)據(jù)流圖由以下四種基本元素組成,既外部實體、數(shù)據(jù)流、處理(功能)、數(shù)據(jù)存儲等,數(shù)據(jù)流圖中所用的符號如下:</p><p> 外部實體 處理 數(shù)據(jù)流 數(shù)據(jù)存儲</p><p> BBS論壇系統(tǒng)的數(shù)據(jù)流程圖如下</p><p>
66、; 說明:⑴——訪問信息,⑵⑶⑽⑾——用戶信息,⑷——發(fā)表帖子信息,⑸更新帖子信息,⑹搜索信息</p><p> ?、恕@取帖子信息,⑻回復(fù)信息,⑼搜索用戶,⑿更新用戶信息,⒀獲取用戶資料</p><p> 圖2.6 數(shù)據(jù)流程圖</p><p><b> 第 3 章系統(tǒng)設(shè)計</b></p><p><b&g
67、t; 3.1 數(shù)據(jù)庫設(shè)計</b></p><p> 數(shù)據(jù)庫設(shè)計是指對于一個給定的應(yīng)用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能夠有效地存儲數(shù)據(jù),滿足各種用戶的應(yīng)用需求(信息要求和處理要求).</p><p><b> 數(shù)據(jù)庫和設(shè)計概述</b></p><p> (1)數(shù)據(jù)庫是信息系統(tǒng)的核心和基礎(chǔ),把信息系統(tǒng)中
68、大量的數(shù)據(jù)按一定的模型組織起來,提供存儲、維護(hù)、檢索數(shù)據(jù)的功能,使信息系統(tǒng)可以方便、及時、準(zhǔn)確地從數(shù)據(jù)庫中獲得所需的信息。 (2)數(shù)據(jù)庫是信息系統(tǒng)的各個部分能否緊密地結(jié)合在一起以及如何結(jié)合的關(guān)鍵所在。 (3)數(shù)據(jù)庫設(shè)計是信息系統(tǒng)開發(fā)和建設(shè)的重要組成部分。</p><p> 3.1.1概念模型設(shè)計(E-R圖)</p><p> 數(shù)據(jù)模型是是數(shù)據(jù)特征的抽象,從抽象層次上描述了系統(tǒng)的
69、靜態(tài)特征、動態(tài)行為和約束條件,為數(shù)據(jù)庫系統(tǒng)的信息表與操作提供一個抽象的框架。描述了數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作及數(shù)據(jù)約束。</p><p> E-R模型的基本概念 </p><p> ER圖概念化地構(gòu)建實體間關(guān)系的模型,這使得它們區(qū)別于數(shù)據(jù)庫模型圖。ER圖的理念是:項目所有參與者能理解ER圖。ER圖由不同實體類型、關(guān)系、特性和類型構(gòu)成。實體是諸如用戶的實際對象,有時更抽象,但必須有業(yè)務(wù)意義。特性
70、用于描述實體,關(guān)系用于實體之間(1)實體:現(xiàn)實世界中的事物; (2)屬性:事物的特性; (3)聯(lián)系:現(xiàn)實世界中事物間的關(guān)系。實體集的關(guān)系有一對一、一對多、多對多的聯(lián)系。</p><p><b> 本系統(tǒng)的ER圖</b></p><p> 圖3.1 系統(tǒng)E-R圖</p><p> 3.1.2數(shù)據(jù)庫表及關(guān)系建立</p>&
71、lt;p> 根據(jù)以上這些步驟就可以創(chuàng)建一個數(shù)據(jù)庫,依次建立下列表結(jié)構(gòu).</p><p><b> 1.用戶基本資料表</b></p><p><b> 2.用戶詳細(xì)信息表</b></p><p><b> 3.論壇文章表</b></p><p><b>
72、 4.論壇版區(qū)表 </b></p><p> 5.論壇初始化信息表 </p><p> (1).用戶基本信息表 和用戶詳細(xì)信息表是一對一的關(guān)系,一個用戶只對應(yīng)一個詳細(xì)的信息表</p><p> (2).用戶基本信息表和文章表是一對多的關(guān)系,即一個用戶可以發(fā)表多篇文章和回復(fù).</p><p> (3).論壇版區(qū)表和論
73、壇文章表是一對多的關(guān)系,在一個論壇中可以含有多個文章和回復(fù).</p><p> 3.1.3詳細(xì)數(shù)據(jù)庫結(jié)構(gòu)設(shè)計</p><p> (1).用戶基本資料表:</p><p> 用戶基本資料表中存放的是用戶登陸時所需要或者記錄用戶的基本信息,包含比如登陸名,密碼,最后登陸時間等.用戶基本信息表的建立主要是記錄用戶最常用的一些信息.</p><p&
74、gt;<b> 表3.1用戶信息表</b></p><p> (2).用戶詳細(xì)信息表:</p><p> 用戶詳細(xì)信息表中存放的是用戶的身高,體重,聯(lián)系方式等詳細(xì)資料,建立此表的目的是把一些用戶不經(jīng)常用到的詳細(xì)信息,單獨存放到一張表中,可以節(jié)約系統(tǒng)的資源.</p><p> 表3.2 用戶基本資料表</p><p&g
75、t; (3).論壇文章表:</p><p> 論壇文章表存放的是用戶所發(fā)表的文章信息,也包括回復(fù)信息.而在數(shù)據(jù)庫的設(shè)計中主要問題是鑒別帖子信息和回復(fù)信息.</p><p> 表3.3 用戶詳細(xì)信息表</p><p> (4).論壇版區(qū)表:</p><p> 論壇版區(qū)表是存放的是論壇中版塊信息.而論壇也劃分為父論壇和子論壇,區(qū)分他們也
76、靠表中的某個字段來實現(xiàn)的.具體實際的設(shè)計如下.</p><p> 表3.4 論壇文章表</p><p> 3.2 系統(tǒng)概要設(shè)計</p><p> 根據(jù)需求分析的結(jié)果,對系統(tǒng)進(jìn)行詳細(xì)的概要設(shè)計</p><p> 3.2.1功能模塊設(shè)計</p><p> 繪制出的用例圖,將本系統(tǒng)分為三個大的模塊,他們分別是會員資
77、料模塊,帖子資料模塊和后臺管理模塊!本系統(tǒng)的功能層次圖如圖3.2.1所示</p><p> 圖3.2.1系統(tǒng)功能層次圖</p><p> 如圖3.2.1,leafbbs系統(tǒng)實現(xiàn)了如下的功能.</p><p><b> (1).會員模塊:</b></p><p> 此模塊用來實現(xiàn)會員的登陸注冊和會員資料的修改和查找
78、.</p><p><b> 1.會員登陸模塊:</b></p><p> 會員可以通過此模塊對論壇進(jìn)行登陸,登陸后便可以使用所有的會員功能,比如發(fā)帖回復(fù)等等.</p><p><b> 2.會員注冊模塊:</b></p><p> 沒有會員帳號的用戶,可以通過此模塊添加會員信息,添加成功后
79、便可登陸論壇,使用會員功能.</p><p><b> 3.資料修改模塊:</b></p><p> 已注冊的會員在登陸后,可以通過此模塊,對會員的基本資料,聯(lián)系方式,密碼,頭像等資料進(jìn)行修改.</p><p><b> 4.會員查找模塊:</b></p><p> 已注冊的會員在登陸后,
80、可以通過此模塊,對會員進(jìn)行查找,并可以查看對方的資料,聯(lián)系方式等等,從而方便會員之間的聯(lián)系.</p><p><b> (2).帖子模塊:</b></p><p><b> 1.帖子發(fā)表模塊:</b></p><p> 已注冊的會員在登陸后,可以在相應(yīng)的論壇中,發(fā)表或轉(zhuǎn)載自己的大作,發(fā)表成功后,其他會員便可以在相應(yīng)的
81、論壇中看到這篇帖子,并可以對其進(jìn)行回復(fù)等操作.</p><p><b> 2.帖子回復(fù)模塊:</b></p><p> 會員在發(fā)表完帖子后,用戶便可查看相關(guān)文章,并可以在文章中對已發(fā)表的帖子進(jìn)行回復(fù),</p><p><b> 3.帖子查找模塊</b></p><p> 會員可以通過此模塊,
82、根據(jù)帖子的標(biāo)題和作者,對相關(guān)的帖子進(jìn)行查找.</p><p><b> (3).后臺管理:</b></p><p><b> 1.帖子查找模塊:</b></p><p> 此模塊和帖子模塊中的帖子查找類似,只是管理員的搜索條件比普通用戶更加的廣泛,使搜索變的便捷.</p><p><b&
83、gt; 2.帖子管理模塊:</b></p><p> 帖子管理模塊是管理員對帖子管理的平臺,如果管理員查看到帖子有不適宜發(fā)表的內(nèi)容時,可以對帖子選擇刪除或者鎖定等操作,如果看到優(yōu)秀的帖子,還可以將帖子進(jìn)行置頂,加精,</p><p> 圖3.3帖子管理模塊功能層次圖</p><p><b> 3.會員管理模塊:</b><
84、;/p><p> 管理員可以通過此模塊,對會員進(jìn)行管理,對一些不法的用戶可以修改或者刪除資料,</p><p><b> 4.論壇管理模塊.</b></p><p> 管理員對論壇的添加,創(chuàng)建,刪除等功能都是在此模塊里進(jìn)行處理.</p><p><b> 5.圖片管理模塊</b></p&g
85、t;<p> 管理員可以管理用戶上傳的頭像,和在文章里發(fā)表的圖片,從而加強(qiáng)對圖片的控制</p><p> 3.2.2系統(tǒng)界面設(shè)計</p><p> 對于系統(tǒng)來說,用戶界面設(shè)計將非常重要,因為一個交互良好的界面能夠加深瀏覽者的印象.</p><p> 設(shè)計的實現(xiàn)可以分為兩個部分。第一部分為站點的規(guī)劃及草圖的繪制,這一部分可以在紙上完成。第二部分為
86、網(wǎng)頁的制作,這一過程是在計算機(jī)上完成的.</p><p> 設(shè)計首頁的第一步是設(shè)計版面布局。我們可以將網(wǎng)頁看作傳統(tǒng)的報刊雜志來編輯,這里面有文字、圖像乃至動畫,我們要做的工作就是以最適合的方式將圖片和文字排放在頁面的不同位置。 除了要有一臺配置不錯的計算機(jī)外,軟件也是必需的。不能簡單地說一個軟件的好壞,只要是設(shè)計者使用起來覺得方便而且能得心應(yīng)手的,就可以稱為好軟件。當(dāng)然,它應(yīng)該能滿足設(shè)計者的要求。常用的軟件是M
87、acromedia的Dreamweaver以及Adobe的Photoshop。</p><p> 設(shè)計是有原則的,無論使用何種手法對畫面中的元素進(jìn)行組合,都一定要遵循五個大的原則:統(tǒng)一、連貫、分割、對比及和諧。</p><p> 統(tǒng)一,是指設(shè)計作品的整體性,一致性。設(shè)計作品的整體效果是至關(guān)重要的,在設(shè)計中切勿將各組成部分孤立分散,那樣會使畫面呈現(xiàn)出一種枝蔓紛雜的凌亂效果。</p&
88、gt;<p> 連貫,是指要注意頁面的相互關(guān)系。設(shè)計中應(yīng)利用各組成部分在內(nèi)容上的內(nèi)在聯(lián)系和表現(xiàn)形式上的相互呼應(yīng),并注意整個頁面設(shè)計風(fēng)格的一致性,實現(xiàn)視覺上和心理上的連貫,使整個頁面設(shè)計的各個部分極為融洽,猶如一氣呵成。</p><p> 分割,是指將頁面分成若干小塊,小塊之間有視覺上的不同,這樣可以使觀者一目了然。在信息量很多時為使觀者能夠看清楚,就要注意到將畫面進(jìn)行有效的分割。分割不僅是表現(xiàn)形
89、式的需要。換個角度來講,分割也可以被視為對于頁面內(nèi)容的一種分類歸納。</p><p> 對比就是通過矛盾和沖突,使設(shè)計更加富有生氣。對比手法很多,例如:多與少、曲與直、強(qiáng)與弱、長與短、粗與細(xì)、疏與密、虛與實、主與次、黑與白、動與靜、美與丑、聚與散等等。在使用對比的時候應(yīng)慎重,對比過強(qiáng)容易破壞美感,影響統(tǒng)一。</p><p> 和諧是指整個頁面符合美的法則,渾然一體。如果一件設(shè)計作品僅僅
90、是色彩、形狀、線條等的隨意混合,那么作品將不但沒有“生命感”,而且也根本無法實現(xiàn)視覺設(shè)計的傳達(dá)功能。和諧不僅要看結(jié)構(gòu)形式,而且要看作品所形成的視覺效果能否與人的視覺感受形成一種溝通,產(chǎn)生心靈的共鳴。這是設(shè)計能否成功的關(guān)鍵。</p><p> 最后簡單設(shè)計系統(tǒng)的簡單登陸界面和主界面</p><p> 圖3.4用戶登陸界面</p><p> 圖3.5用戶登陸后的主
91、界面</p><p> 3.2.3系統(tǒng)的組件設(shè)計</p><p> 在整個系統(tǒng)中,為了解決諸如中文顯示亂碼此類的問題,本系統(tǒng)需要設(shè)計一些組件,來解決相關(guān)的問題.</p><p> (1).過濾器組件:</p><p> Java的內(nèi)核和class文件是基于unicode的,這使Java程序具有良好的跨平臺性,但也帶來了一些中文亂碼問題
92、的麻煩。原因主要有兩方面,Java和JSP文件本身編譯時產(chǎn)生的亂碼問題和Java程序于其他媒介交互產(chǎn)生的亂碼問題。</p><p> Java(包括JSP)源文件中很可能包含有中文,而Java和JSP源文件的保存方式是基于字節(jié)流的,如果Java和JSP編譯成class文件過程中,使用的編碼方式與源文件的編碼不一致,就會出現(xiàn)亂碼</p><p> 為了解決此類問題,需要設(shè)計一個組件來解決
93、此類問題,每次請求和響應(yīng)到達(dá)客戶和服務(wù)器端時,都先經(jīng)過此過濾器對字符進(jìn)行過濾.</p><p> 圖3.6字符過濾器原理圖</p><p> (2).權(quán)限管理組件:</p><p> 在論壇中的的用戶一定會遇到關(guān)于權(quán)限的問題,比如沒有登陸的用戶只可以查看帖子,而即使登陸的用戶,也只可以對自己應(yīng)有的權(quán)限進(jìn)行操作,不可以操作管理員的功能.</p>&
94、lt;p> 解決此類問題,本系統(tǒng)是通過判斷特定的session來判斷用戶的權(quán)限,當(dāng)用戶登陸成功后,組件會發(fā)送相應(yīng)的用戶session,之后每次用戶對論壇進(jìn)行操作,都要先通過session,來判斷用戶的權(quán)限.</p><p> 圖3.7權(quán)限判斷流程</p><p> (3).JSP標(biāo)簽組件</p><p> 由于本文是基于MVC模式架構(gòu),所以在JSP網(wǎng)頁
95、中不應(yīng)存放過多的邏輯判斷,當(dāng)本系統(tǒng)JSP網(wǎng)頁中必須存有JAVA邏輯代碼時,本系統(tǒng)設(shè)計了一些JSP標(biāo)簽來替代這些邏輯代碼</p><p> 第 4 章 系統(tǒng)實現(xiàn)</p><p> 程序設(shè)計又稱編碼,是系統(tǒng)生命周期中繼詳細(xì)設(shè)計之后的階段,這個階段的任務(wù)是使用選定的程序設(shè)計語言,把經(jīng)過概要設(shè)計和詳細(xì)設(shè)計所得到的以程序設(shè)計說明書體現(xiàn)的信息處理過程描述后,轉(zhuǎn)換成能在計算機(jī)系統(tǒng)上運(yùn)行的程序源代碼。
96、</p><p> 4.1 系統(tǒng)框架實現(xiàn)</p><p> 在系統(tǒng)的整體設(shè)計中,我們采取了三層結(jié)構(gòu).這樣結(jié)構(gòu)的優(yōu)點是靈活,移植和可維護(hù)性比較高. 每個層在處理程序上都應(yīng)該有一項明確的責(zé)任, 而不應(yīng)該在功能上與其它層混合,并且每個層要與其它層分開的</p><p> 圖4.1 S.S.H框架的結(jié)合使用</p><p> 4.1.1底層數(shù)
97、據(jù)庫的建立</p><p> 在前期的數(shù)據(jù)庫選用中,本系統(tǒng)選取了靈活高速的 MySQL數(shù)據(jù)庫,而在數(shù)據(jù)庫的設(shè)計中,本文已經(jīng)確立了表結(jié)構(gòu). 根據(jù)這些就可以創(chuàng)建一個數(shù)據(jù)庫,在數(shù)據(jù)庫創(chuàng)建并連接好后,就可以創(chuàng)建表、修改表和刪除表,創(chuàng)建、修改、和刪除主鍵、外鍵等等。選中“l(fā)eafbbs”數(shù)據(jù)庫,use database并使用Create table<表名>Sql語句,依次創(chuàng)建以下表結(jié)構(gòu)。由于考慮到本系統(tǒng)是應(yīng)用
98、在單機(jī)系統(tǒng)上,另外根據(jù)管理的規(guī)模,我們只建立一個數(shù)據(jù)庫,在此數(shù)據(jù)庫基礎(chǔ)上建立</p><p> bbs_userinfo 用戶基本資料表</p><p> bbs_userdeta 用戶詳細(xì)信息表</p><p> bbs_forum 論壇文章表</p><p> bbs_board
99、 論壇版區(qū)表 </p><p> bbs_config 論壇初始化信息表 </p><p> 4.1.2持久化層的建立(hibernate)</p><p> 典型的Web應(yīng)用的另一個末端是持久層。Hibernate為java提供了OR持久化機(jī)制和查詢服務(wù), 它還給已經(jīng)熟悉SQL和JDBC API 的Java開發(fā)
100、者一個學(xué)習(xí)橋梁,他們學(xué)習(xí)起來很方便。 Hibernate的持久對象是基于POJO和Java collections。此外。 系統(tǒng)建立Hibernate的持久層 。 首先把BO持久化。 Hibernate是通過POJO工作的, 因此數(shù)據(jù)對象需要給所有的fileds 加上getter,setter方法。 Hibernate通過XML文件來映射(OR)對象。 本系統(tǒng)可以在com.leafbbs.bean目錄下找到這些xml文件
101、。Hibernate配置文件的作用用來告訴程序 應(yīng)該與哪個數(shù)據(jù)庫通信,該使用哪個連接池或使用了DataSource, 應(yīng)該加載哪些持久對象。而Session接口是用來完成Selecting,Saving,Delete和Updating這些操作。</p><p> 4.1.3業(yè)務(wù)邏輯層的建立</p><p> 本系統(tǒng)的業(yè)務(wù)邏輯是交由struts中的Action進(jìn)行判斷的,比如判斷登陸的業(yè)
102、務(wù)邏輯時,會建立一個LoginAction類來進(jìn)行邏輯判斷,而一些關(guān)聯(lián)的映射,LeafBBS系統(tǒng)是寫在struts框架的struts-config.xml中.</p><p> 從編碼的視角來看,這層是最容易被忽視的一層。 卻往往在持久層周圍看到這些業(yè)務(wù)處理的代碼,這其實是不正確的,因為它導(dǎo)致了程序代碼的緊密偶合,這樣一來,隨著時間推移這些代碼很難維護(hù)。幸好,針對這一問題本系統(tǒng)可以使用Spring框架來解決.s
103、pring框架都著手于“依賴注射”(dependency injection)(還有我們知道的‘控制反轉(zhuǎn)'Inversion of Control=IoC)這樣的簡單概念。Spring還提供了Setter Injection(type2),Constructor Injection(type3)等方式供選擇。 Spring把程序中所涉及到包含業(yè)務(wù)邏輯和Dao的Objects——例如transaction management h
104、andler(事物管理控制)、Object Factoris(對象工廠)、service objects(服務(wù)組件)——都通過XML來配置聯(lián)系起來。這種方式讓你的對象從創(chuàng)建中釋放了出來,降低了偶合度.</p><p> 每個對象都可以在Spring 配置信息applicationContext.xml中用<bean>標(biāo)簽引用。在這里,mySessionFactory引用了HibernateSessi
105、onFactory,而myTransactionManager引用了HibernateTransactionManage。 代碼中myTransactionManger Bean有個sessionFactory屬性。 HibernateTransactionManager有個sessionFactory setter 和 getter方法,這是用來在Spring啟動的時候?qū)崿F(xiàn)"依賴注入" (dependency in
106、jection)的。 在sessionFactory 屬性里 引用mySessionFactory。這兩個對象在Spring容器初始化后就被組裝了起來了。 這樣的搭配讓你從 單例(singleton objects)和工廠(factories)中解放了出來,降低了代碼的維護(hù)代價。 mySessionFactory.的兩個屬性,分別是用來注入mappingResources 和 hibernate</p><p>
107、 圖4.2 Spring基于配置文件,將各個Bean搭建在一起。</p><p> 4.1.4表示層的建立</p><p> 在表示層上,主要是基于JSP和AJAX異步傳輸技術(shù)來進(jìn)行建立,最后通過Struts 框架的struts-config.xml文件進(jìn)行關(guān)聯(lián)映射.具體的頁面設(shè)計,會在后面的章節(jié)中進(jìn)行介紹.</p><p> 4.2 系統(tǒng)功能模塊實現(xiàn)<
108、;/p><p><b> 用戶管理代碼:</b></p><p> <%@ page language="java" contentType="text/html; charset=gb2312"</p><p> pageEncoding="UTF-8"%></p
109、><p> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"></p><p><b> <html></b></p><p>
110、<b> <head></b></p><p> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"></p><p> <title>論壇后臺管理</title></p>&l
111、t;p><b> </head></b></p><p> <DIV style="PADDING-RIGHT:10px;OVERFLOW-Y:auto;PADDING-LEFT:10px;SCROLLBAR-FACE-COLOR:#ffffff;FONT-SIZE:11pt;PADDING-BOTTOM:0px;SCROLLBAR-HIGHLIGHT-
112、COLOR:#ffffff;OVERFLOW:auto;WIDTH:510px;SCROLLBAR-SHADOW-COLOR:#919192;COLOR:blue;SCROLLBAR-3DLIGHT-COLOR:#ffffff;LINE-HEIGHT:100%;SCROLLBAR-ARROW-COLOR:#919192;PADDING-TOP:0px;SCROLLBAR-TRACK-COLOR:#ffffff;FONT-FAMILY:宋
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于ssh框架的論壇的設(shè)計與實現(xiàn)
- 畢業(yè)論文--基于ssh框架的論壇的設(shè)計與實現(xiàn)
- 畢業(yè)論文--基于ssh框架的論壇的設(shè)計與實現(xiàn)
- 基于SSH框架的Web網(wǎng)站設(shè)計與實現(xiàn).pdf
- 基于SSH框架的網(wǎng)絡(luò)學(xué)堂的設(shè)計與實現(xiàn).pdf
- 基于SSH框架的合同管理平臺設(shè)計與實現(xiàn).pdf
- 基于SSH框架的旅游管理系統(tǒng)設(shè)計與實現(xiàn).pdf
- 基于SSH框架的客戶響應(yīng)系統(tǒng)設(shè)計與實現(xiàn).pdf
- 基于ssh框架的定崗實習(xí)平臺的設(shè)計與實現(xiàn)
- 基于SSH框架的教學(xué)測評系統(tǒng)設(shè)計與實現(xiàn).pdf
- 基于SSH框架的倉庫管理系統(tǒng)設(shè)計與實現(xiàn).pdf
- 基于SSH框架的銷售管理系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 基于ssh框架的科研獎勵管理平臺的設(shè)計與實現(xiàn)
- 基于SSH框架的農(nóng)業(yè)服務(wù)系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 基于SSH框架的網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 基于SSH框架的信息發(fā)布模塊的設(shè)計與實現(xiàn).pdf
- 基于SSH框架的網(wǎng)上評審系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 基于SSH框架的網(wǎng)絡(luò)教學(xué)平臺的設(shè)計與實現(xiàn).pdf
- 基于SSH框架的設(shè)備運(yùn)維系統(tǒng)設(shè)計與實現(xiàn).pdf
- 基于SSH框架的OA辦公管理系統(tǒng)設(shè)計與實現(xiàn).pdf
評論
0/150
提交評論