版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 2012屆本科畢業(yè)設(shè)計(jì)</p><p><b> 留言板管理系統(tǒng)</b></p><p> 院(系)名稱(chēng)信息技術(shù)學(xué)院</p><p> 專(zhuān) 業(yè) 名 稱(chēng)軟件工程 </p><p> 學(xué)生姓名</p><p> 學(xué)號(hào)</p><p> 指導(dǎo)教師講師&l
2、t;/p><p> 完 成 時(shí) 間2012年5月</p><p><b> 摘要</b></p><p> 電子留言板在國(guó)內(nèi)一般稱(chēng)作網(wǎng)絡(luò)論壇,早期的留言板與一般街頭和校園內(nèi)的公告板性質(zhì)相同,只不過(guò)是通過(guò)電腦來(lái)傳播或獲得消息而已。一直到個(gè)人計(jì)算機(jī)開(kāi)始普及之后,有些人嘗試將蘋(píng)果計(jì)算機(jī)上的留言板轉(zhuǎn)移到個(gè)人計(jì)算機(jī)上,留言板才開(kāi)始漸漸普及開(kāi)來(lái)。近些年來(lái),
3、由于留言板愛(ài)好者們的努力,留言板的功能得到了很大的擴(kuò)充。</p><p> 本留言板系統(tǒng)可以使游客無(wú)拘無(wú)束的發(fā)布對(duì)版主的信息,而版主則可以對(duì)收到的信息進(jìn)行回復(fù)操作,適合不在同一地點(diǎn)的人群進(jìn)行網(wǎng)上的的交流。本系統(tǒng)具有友好的登錄頁(yè)面,沒(méi)有用戶名的游客也可以在主頁(yè)面上進(jìn)行注冊(cè),填入合適的注冊(cè)信息之后就可以得到本留言板系統(tǒng)的認(rèn)可,成為普通用戶。成為用戶之后除了可以收到游客對(duì)自己的留言并對(duì)其進(jìn)行回復(fù)外,還可以對(duì)留言進(jìn)行修
4、改刪除操作。用戶還可以修改自己的密碼等系統(tǒng)信息。</p><p> 關(guān)鍵詞:留言板;SSH框架;sql server數(shù)據(jù)庫(kù)</p><p><b> Abstract</b></p><p> Electronic message boards in the country commonly known as online forums,
5、 the early message board with general street and campus bulletin boards nature is the same, only to spread through a computer or access to news. Until after the personal computer began to spread, some people try to messa
6、ge boards on the Apple transferred to the personal computer, message boards began gradually gaining in popularity. In recent years, thanks to the efforts of enthusiasts of message boards, the function of the</p>&
7、lt;p> This message board allows visitors to freely release information to the moderator, the information received while the moderator can reply to the crowd for not in the same location online exchanges.This system h
8、as a friendly login page, there is no user name Visitors can also register on the main page, fill in the appropriate registration information on this message board system can be recognized as a normal user. As a user, in
9、 addition to can receive visitors to their message and their reply, th</p><p> Keywords: message board;SSH framework ;sql server database</p><p><b> 目 錄</b></p><p&
10、gt;<b> 第1章 緒論1</b></p><p> 1.1 系統(tǒng)開(kāi)發(fā)背景1</p><p> 1.2 系統(tǒng)研究目的和意義1</p><p> 1.3 可行性分析2</p><p> 第2章 系統(tǒng)需求分析3</p><p> 2.2 系統(tǒng)性能要求3</p>
11、<p> 2.3 數(shù)據(jù)流圖分析3</p><p> 第3章 系統(tǒng)總體設(shè)計(jì)5</p><p> 3.1 系統(tǒng)功能模塊分析5</p><p> 3.1.1 用戶登錄注銷(xiāo)5</p><p> 3.1.2 用戶注冊(cè)5</p><p> 3.1.3 用戶信息的修改和刪除5</p>
12、<p> 3.1.4 用戶信息的瀏覽6</p><p> 3.1.5 留言內(nèi)容的管理編輯6</p><p> 3.2 實(shí)體E-R圖6</p><p> 3.3 系統(tǒng)用例圖6</p><p> 3.4 系統(tǒng)總體設(shè)計(jì)7</p><p> 4.1 開(kāi)發(fā)工具簡(jiǎn)介8</p>&l
13、t;p> 4.2 開(kāi)發(fā)框架8</p><p> 4.2.1 系統(tǒng)中Struts2的實(shí)現(xiàn)8</p><p> 4.2.2 系統(tǒng)中Hibernate的實(shí)現(xiàn)10</p><p> 4.2.3 系統(tǒng)中Spring的實(shí)現(xiàn)10</p><p> 4.3 數(shù)據(jù)庫(kù)設(shè)計(jì)12</p><p> 4.4 用戶界面
14、設(shè)計(jì)13</p><p> 4.4.1 登錄界面13</p><p> 4.4.2 用戶注冊(cè)界面16</p><p> 4.4.3 信息查詢及顯示界面21</p><p> 4.4.3 后臺(tái)管理界面24</p><p> 第5章 軟件測(cè)試和調(diào)試27</p><p> 5.
15、1 白盒測(cè)試法27</p><p> 5.2 黑盒測(cè)試法29</p><p> 第6章 工作總結(jié)和展望30</p><p><b> 參考文獻(xiàn)31</b></p><p><b> 致 謝32</b></p><p><b> 第1章 緒論&l
16、t;/b></p><p> 1.1 系統(tǒng)開(kāi)發(fā)背景 </p><p> 現(xiàn)今是網(wǎng)絡(luò)時(shí)代,信息的交流不再單單是面對(duì)面的交流還增加了虛擬網(wǎng)絡(luò)的交流,由于其方便快捷及其對(duì)地域時(shí)間等因素的的要求的淡化,Internet上的交流早已占據(jù)著一個(gè)極其重要的地位。人們可以通過(guò)在互聯(lián)網(wǎng)上收到最新的消息,也可以通過(guò)互聯(lián)網(wǎng)進(jìn)行信息的交流。而留言板就是大家進(jìn)行信息交流的其中一個(gè)渠道。 </p>
17、;<p> 留言板是一種在Internet網(wǎng)上開(kāi)放的信息服務(wù)系統(tǒng),通過(guò)該系統(tǒng)用戶可以方便的實(shí)現(xiàn)信息的交換和文件的共享。</p><p> 本系統(tǒng)主要完成了基于JSP技術(shù)的校內(nèi)論壇的設(shè)計(jì)和實(shí)現(xiàn),主要實(shí)現(xiàn)了客戶端和服務(wù)器端的動(dòng)態(tài)交互。該系統(tǒng)主要包含:‘用戶信息管理’模塊;留言內(nèi)容實(shí)現(xiàn)及排版’模塊;‘用戶權(quán)限所對(duì)應(yīng)的功能實(shí)現(xiàn)’模塊;‘留言發(fā)布/回復(fù)’模塊,四大模塊。本論文詳細(xì)描述了留言版系統(tǒng)的結(jié)構(gòu)、功
18、能以及具體設(shè)計(jì)過(guò)程。系統(tǒng)采用了JSP技術(shù)以及JavaBeans組件技術(shù)和JDBC技術(shù)實(shí)現(xiàn)。</p><p> 目前,通過(guò)留言板系統(tǒng)可隨時(shí)取得國(guó)際最新的軟件及信息,也可以通過(guò)留言板系統(tǒng)來(lái)和別人討論計(jì)算機(jī)軟件、硬件、Internet、多媒體、程序設(shè)計(jì)以及醫(yī)學(xué)等等各種有趣的話題,更可以利用留言板系統(tǒng)來(lái)刊登一些“征友”、“廉價(jià)轉(zhuǎn)讓”及“公司產(chǎn)品”等啟事,而且這個(gè)園地就在你我的身旁。只要您擁有1臺(tái)計(jì)算機(jī)、1只調(diào)制解調(diào)器和
19、1條電話線,就能夠進(jìn)入這個(gè)“超時(shí)代”的領(lǐng)域,進(jìn)而去享用它無(wú)比的威力!</p><p> 1.2 系統(tǒng)研究目的和意義</p><p> 留言板系統(tǒng)最初是為了給計(jì)算機(jī)愛(ài)好者提供一個(gè)互相交流的地方。70年代后期,計(jì)算機(jī)用戶數(shù)目很少且用戶之間相距很遠(yuǎn)。因此,留言板系統(tǒng)(當(dāng)時(shí)全世界一共不到一百個(gè)站點(diǎn))提供了一個(gè)簡(jiǎn)單方便的交流方式,用戶通過(guò) 留言板可以交換軟件和信息。到了今天,留言板的用戶已經(jīng)擴(kuò)展
20、到各行各業(yè),除原先的計(jì)算機(jī)愛(ài)好者們外,商用留言板操作者、環(huán)境組織、宗教組織及其它利益團(tuán)體也加入了這個(gè)行列。只要瀏覽一下世界各地的留言板系統(tǒng),你就會(huì)發(fā)現(xiàn)它幾乎就象地方電視臺(tái)一樣,花樣非常多?!?lt;/p><p> 它向用戶提供了一塊公共電子白板,每個(gè)用戶都可以在上面發(fā)布信息或提出看法,早期的留言板由教育機(jī)構(gòu)或研究機(jī)構(gòu)管理,現(xiàn)在多數(shù)網(wǎng)站上都建立了自己的留言板系統(tǒng),供網(wǎng)民通過(guò)網(wǎng)絡(luò)來(lái)結(jié)交更多的朋友,表達(dá)更多的想法。 目前
21、國(guó)內(nèi)的留言板已經(jīng)十分普遍,可以說(shuō)是不計(jì)其數(shù),其中留言板大致可以分為5類(lèi): </p><p> 1.校園留言板CERNET建立以來(lái),校園留言板很快地發(fā)展了起來(lái),目前很多大學(xué)都有了留言板,幾乎遍及全國(guó)上下。象清華大學(xué)、北京大學(xué)等等都建立了自己的留言板系統(tǒng),清華大學(xué)的水木清華很受學(xué)生和網(wǎng)民們的喜愛(ài)。大多數(shù)留言板是由各校的網(wǎng)絡(luò)中心建立的,也有私人性質(zhì)的留言板。</p><p> 2.商業(yè)留言
22、言板網(wǎng)站這里主要是進(jìn)行有關(guān)商業(yè)的商業(yè)宣傳,產(chǎn)品推薦等等,目前手機(jī)的商業(yè)站、電腦的商業(yè)站、房地產(chǎn)的商業(yè)站比比皆是。</p><p> 3.專(zhuān)業(yè)留言板是指部委和公司的留言板,它主要用于建立地域性的文件傳輸和信息發(fā)布系統(tǒng)。</p><p> 4.情感留言板主要用于交流情感,是許多娛樂(lè)網(wǎng)站的首選。</p><p> 5.個(gè)人留言言的制作者們?cè)谧约旱膫€(gè)人主頁(yè)上建設(shè)了留言
23、板,用于接受別人的想法,更有利于與好友進(jìn)行溝通。</p><p><b> 1.3 可行性分析</b></p><p> 當(dāng)今社會(huì)正處在網(wǎng)絡(luò)時(shí)代,信息化大潮席卷全球,網(wǎng)絡(luò)正以前所未有的速度在我國(guó)普及開(kāi)來(lái)。網(wǎng)站以其獨(dú)特的優(yōu)勢(shì)在信息化的過(guò)程中占有重要的一席。為了方便信息的交流,在結(jié)合JAVA和S.S.H 技術(shù)之下開(kāi)發(fā)了這個(gè)快捷、界面友好的交流系統(tǒng),實(shí)現(xiàn)了一個(gè)功能相對(duì)齊
24、全的留言板系統(tǒng),網(wǎng)友可以自由地提出問(wèn)題以及幫助他人解決問(wèn)題,或者交流經(jīng)驗(yàn)。</p><p><b> 1.技術(shù)可行性</b></p><p> 根據(jù)該系統(tǒng)目標(biāo)來(lái)衡量所需的技術(shù)是否具備,一般可從硬軟件的性能要求、環(huán)境條件、操作人員水平和數(shù)量等方面去考慮和分析。</p><p> 考慮到系統(tǒng)實(shí)施的可行性,在軟件方面選擇了如今較流行的MyEcl
25、ipse工具來(lái)進(jìn)行開(kāi)發(fā)管理平臺(tái)的設(shè)計(jì),使用SQL server 2000數(shù)據(jù)庫(kù)存儲(chǔ)數(shù)據(jù)。</p><p> 在硬件方面,則選擇空間越大,硬件的配置越高,系統(tǒng)的開(kāi)發(fā)與運(yùn)行會(huì)更流暢??紤]到如今的家用或商用電腦硬件的整體配置水平,系統(tǒng)在硬件方面是可行的。</p><p> 在軟件方面,由于MyEclipse和SQL server 2000是兩個(gè)非常成熟的開(kāi)發(fā)工具,無(wú)論在安全性、可用性、可靠性
26、方面都毫無(wú)置疑,因此軟件方面是可行的。</p><p> 2.時(shí)間,設(shè)備可行性</p><p> 系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)工作預(yù)計(jì)耗時(shí)一個(gè)月,能夠保證按時(shí)完成任務(wù)。實(shí)驗(yàn)設(shè)備如:計(jì)算機(jī)。打印機(jī)。</p><p><b> 3.系統(tǒng)工作量</b></p><p> 該系統(tǒng)工作量很大,必須保證按進(jìn)度完成任務(wù)。實(shí)際工作量預(yù)計(jì)超過(guò)三
27、個(gè)月。如包含軟件維護(hù)及技術(shù)論文的整理,制作,工作量將更大。</p><p> 第2章 系統(tǒng)需求分析</p><p> 2.2 系統(tǒng)性能要求</p><p><b> 1.安全性</b></p><p> 該系統(tǒng)的安全性主要是防止他人非法進(jìn)入系統(tǒng),從而保證了數(shù)據(jù)的安全性,數(shù)據(jù)存儲(chǔ)的完整性和數(shù)據(jù)的可靠性。設(shè)置三種不同
28、的身份進(jìn)行登錄,即高級(jí)用戶、普通用戶和游客;同時(shí),系統(tǒng)中所有已注冊(cè)用戶的密碼使用了MD5加密技術(shù),很大程度上提高了系統(tǒng)的安全性。</p><p><b> 2.高效性</b></p><p> 使用此留言板管理系統(tǒng)可以使用戶更方便更快速的與版主進(jìn)行留言。大大的縮短了游客與版主進(jìn)行交流的時(shí)間,方便了游客與版主的交流與聯(lián)系。 </p><p>
29、<b> 3.便捷性</b></p><p> 本系統(tǒng)的界面友好,操作方便,能夠達(dá)到所見(jiàn)即所得的效果,方便用戶的使用。</p><p> 2.3 數(shù)據(jù)流圖分析</p><p> 本系統(tǒng)是為了提供給廣大用戶一個(gè)網(wǎng)上交流的平臺(tái),所以論壇的流程是以用戶為中心進(jìn)行的。</p><p> 數(shù)據(jù)流圖是一種能全面地描述信息系
30、統(tǒng)邏輯模型的主要工具,它可以用少數(shù)幾種符號(hào)綜合地反映出信息在系統(tǒng)中的流動(dòng)、處理和存儲(chǔ)情況。數(shù)據(jù)流圖具有以下兩個(gè)特性:</p><p> 1.抽象性:表現(xiàn)在它完全舍去了具體的物質(zhì),只剩下數(shù)據(jù)的流動(dòng)、加工處理與存儲(chǔ)。</p><p> 2.概括性:表現(xiàn)在它可以把信息中的各種不同業(yè)務(wù)處理過(guò)程聯(lián)系起來(lái),形成一個(gè)整體。</p><p> 數(shù)據(jù)流圖由以下四種基本元素組成,
31、既外部實(shí)體、數(shù)據(jù)流、處理(功能)、數(shù)據(jù)存儲(chǔ)等,數(shù)據(jù)流圖中所用的符號(hào)如圖2-1所示。</p><p> 外部實(shí)體 處理 數(shù)據(jù)流 數(shù)據(jù)存儲(chǔ)</p><p><b> 圖2-1 符號(hào)圖</b></p><p> 留言板系統(tǒng)的數(shù)據(jù)流程圖如圖2-2所示。</p><p> 圖2
32、.6 數(shù)據(jù)流程圖</p><p> 說(shuō)明:⑴——訪問(wèn)信息,⑵⑶⑽⑾——用戶信息,⑷——發(fā)表帖子信息,⑸更新帖子信息,⑹搜索信息⑺——獲取帖子信息,⑻回復(fù)信息,⑼搜索用戶,⑿更新用戶信息,⒀獲取用戶資料。</p><p> 第3章 系統(tǒng)總體設(shè)計(jì)</p><p> 系統(tǒng)總體設(shè)計(jì)需完成的主要功能是概念和邏輯結(jié)構(gòu)設(shè)計(jì),其中概念結(jié)構(gòu)設(shè)計(jì)是將需求分析得到的用戶需求抽象為概
33、念模型的過(guò)程,它是整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)的關(guān)鍵。邏輯結(jié)構(gòu)設(shè)計(jì)的任務(wù)是把概念結(jié)構(gòu)設(shè)計(jì)階段設(shè)計(jì)好的基本E-R圖轉(zhuǎn)化為與選用DBMS產(chǎn)品所支持的數(shù)據(jù)模型所符合的邏輯結(jié)構(gòu)。</p><p> 3.1 系統(tǒng)功能模塊分析</p><p> 本系統(tǒng)是一套網(wǎng)上交流的留言板軟件,根據(jù)用戶的需要和實(shí)際的管理?xiàng)l件,應(yīng)由用戶功能實(shí)現(xiàn),帖子功能實(shí)現(xiàn)和后臺(tái)管理等幾個(gè)模塊所構(gòu)成,用戶可以對(duì)一些數(shù)據(jù)進(jìn)行查找和修改,并且注冊(cè)的
34、用戶可以對(duì)帖子進(jìn)行特定的操作,而管理員可以對(duì)用戶和帖子進(jìn)行相關(guān)的管理。</p><p> 論壇系統(tǒng)應(yīng)該能夠在用戶通過(guò)帳戶密碼驗(yàn)證登錄留言板服務(wù)系統(tǒng)后,判斷用戶級(jí)別識(shí)別兩類(lèi)不同權(quán)限級(jí)別的用戶。第一類(lèi)是游客,擁有瀏覽留言,查詢注冊(cè)用戶個(gè)體最基本信息的權(quán)限;第二類(lèi)是用戶,能夠?qū)ο鄳?yīng)留言進(jìn)行回復(fù),刪除,瀏覽和編輯。對(duì)自己的密碼和公告欄內(nèi)容進(jìn)行更改;</p><p> 鑒于本系統(tǒng)的性質(zhì),系統(tǒng)應(yīng)該
35、實(shí)現(xiàn)以下功能:</p><p> 1.用戶功能實(shí)現(xiàn):用戶的登錄,注冊(cè)和登錄信息的修改。</p><p> 2.留言功能實(shí)現(xiàn):留言的發(fā)表,留言的回復(fù),留言的編輯,留言的刪除。</p><p> 3.后臺(tái)管理:用戶密碼的管理,留言的管理,公告信息的管理。</p><p> 3.1.1 用戶登錄注銷(xiāo)</p><p>
36、 進(jìn)入登錄界面用戶可以進(jìn)行登錄,登錄進(jìn)去后不同的用戶擁有不同的權(quán)限,同時(shí)想更換用戶時(shí)可以注銷(xiāo)現(xiàn)有用戶。</p><p> 3.1.2 用戶注冊(cè)</p><p> 用戶注冊(cè)頁(yè)面同時(shí)完成了新用戶的注冊(cè)和添加用戶信息的功能,因?yàn)橛脩粜畔⒉皇翘?,因此在此系統(tǒng)中我將這兩個(gè)模塊合二為一,顯示用戶信息時(shí)只要把用戶密碼不顯示就可以。</p><p> 新用戶可以通過(guò)此頁(yè)面
37、注冊(cè)一個(gè)用戶名,然后此用戶信息就會(huì)自動(dòng)顯示在用戶信息中,以供瀏覽和查詢。同時(shí)高級(jí)管理員可以通過(guò)此界面添加一個(gè)新的聯(lián)系人信息。</p><p> 在新用戶注冊(cè)中的密碼在后臺(tái)會(huì)進(jìn)行加密操作,以保證系統(tǒng)的安全性。</p><p> 3.1.3 用戶信息的修改和刪除</p><p> 普通用戶可以進(jìn)入系統(tǒng)更改界面對(duì)用戶信息進(jìn)行相應(yīng)的修改,如可以改變自己的登錄 錄密碼
38、,還可以對(duì)注冊(cè)信息進(jìn)行修改。</p><p> 3.1.4 用戶信息的瀏覽</p><p> 所有用戶都可以對(duì)用戶信息進(jìn)行瀏覽,顯示出現(xiàn)用用戶的信息。</p><p> 3.1.5 留言內(nèi)容的管理編輯</p><p><b> 留言編輯管理包括:</b></p><p> 1.游客添加對(duì)
39、版主的留言</p><p> 2.版主修改編輯游客對(duì)自己的留言</p><p> 3.版主查看留言信息及留言者的信息</p><p> 4.版主可以刪除游客的留言</p><p> 3.2 實(shí)體E-R圖</p><p> 實(shí)體之間關(guān)系的E-R圖如圖3-1所示。</p><p> 圖3
40、-1 系統(tǒng)E-R圖</p><p><b> 3.3 系統(tǒng)用例圖</b></p><p> 電話簙系統(tǒng)用例圖如圖3-2所示。</p><p> 圖3-2 系統(tǒng)用例圖</p><p> 3.4 系統(tǒng)總體設(shè)計(jì)</p><p> 系統(tǒng)設(shè)置了三種身份的登錄,包括高級(jí)用戶、普通用戶和游客。其中高級(jí)
41、用戶只有一個(gè)是在程序中直接加進(jìn)去的不可以通過(guò)注冊(cè)成為高級(jí)用戶,可以通過(guò)注冊(cè)成為普通用戶,游客是只是瀏覽此系統(tǒng)不對(duì)此系統(tǒng)中的任何數(shù)據(jù)做改動(dòng)。</p><p> 本系統(tǒng)整體架構(gòu)采用MVC模式(模型-視圖-控制器)。</p><p> 模型(Model):在數(shù)據(jù)持久層中,模型即為值對(duì)象以及數(shù)據(jù)訪問(wèn)對(duì)象。 </p><p> 視圖(View):數(shù)據(jù)持久層中,視圖就是持
42、久層同其它層進(jìn)行數(shù)據(jù)交換的值對(duì)象。</p><p> 控制器(Controller):持久層所需的控制相對(duì)簡(jiǎn)單,因此集成到了控制代理中。</p><p> 本系統(tǒng)結(jié)構(gòu)分為四層從上到下即Web層、動(dòng)作層(Action層)、事務(wù)層(Service層)、</p><p> 持久層(Persistent層),MVC設(shè)計(jì)模式與四層應(yīng)用結(jié)構(gòu)的對(duì)應(yīng)關(guān)系圖如圖3-3所示。&l
43、t;/p><p> 圖3-3 MVC設(shè)計(jì)模式與四層應(yīng)用結(jié)構(gòu)的對(duì)應(yīng)關(guān)系圖</p><p> 第4章 系統(tǒng)詳細(xì)設(shè)計(jì)</p><p> 4.1 開(kāi)發(fā)工具簡(jiǎn)介</p><p> MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipse Enterprise Workbench ,簡(jiǎn)稱(chēng)MyEclipse)是對(duì)Eclipse IDE的擴(kuò)展,利用它我們可以
44、在數(shù)據(jù)庫(kù)和JavaEE的開(kāi)發(fā)、發(fā)布,以及在應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開(kāi)發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。</p><p> 在結(jié)構(gòu)上,MyEclipse的特征可以被分為7類(lèi):</p><p> 1. JavaEE模型
45、 </p><p> 2. WEB開(kāi)發(fā)工具 </p><p> 3. EJB開(kāi)發(fā)工具 </p><p> 4. 應(yīng)用程序服務(wù)器的連接器</p><p> 5. JavaEE項(xiàng)目部署服務(wù)</p><p><b> 6. 數(shù)據(jù)庫(kù)服務(wù)</b></p><p> 7.
46、MyEclipse整合幫助 </p><p> 對(duì)于以上每一種功能上的類(lèi)別,在Eclipse中都有相應(yīng)的功能部件,并通過(guò)一系列的插件來(lái)實(shí)現(xiàn)它們。MyEclipse結(jié)構(gòu)上的這種模塊化,可以讓我們?cè)诓挥绊懫渌K的情況下,對(duì)任一模塊進(jìn)行單獨(dú)的擴(kuò)展和升級(jí)。 </p><p> 簡(jiǎn)單而言,MyEclipse是Eclipse的插件,也是一款功能強(qiáng)大的JavaEE集成開(kāi)發(fā)環(huán)境,支持代碼編寫(xiě)、配置、
47、測(cè)試以及除錯(cuò),MyEclipse6.0以前版本需先安裝Eclipse。MyEclipse6.0以后版本安裝時(shí)不需安裝Eclipse。</p><p> 經(jīng)過(guò)了MyEclipse 8.5 M1和MyEclipse 8.5 M2兩個(gè)版本,MyEclipse Enterprise Workbench 8.5 for Eclipse 3.5.2終于在2010年3月28號(hào)正式發(fā)布了!在官方網(wǎng)站上 MyEclipse 8.
48、5 可以下載了,該版本集成了 Eclipse 3.5.2,提升了團(tuán)隊(duì)協(xié)作開(kāi)發(fā)、開(kāi)發(fā)周期管理以及 Spring 和 Hibernate 的更好支持。</p><p> MyEclipse 8.5大大降低了用戶的使用難度,操作簡(jiǎn)單容易上手,因此,用其作為開(kāi)發(fā)工具比較合適。</p><p><b> 4.2 開(kāi)發(fā)框架</b></p><p>
49、本系統(tǒng)主要采用兩大框架Struts2+Hibernate。Struts2實(shí)現(xiàn)MVC模式,Hibernate實(shí)現(xiàn)持久化。</p><p> 4.2.1 系統(tǒng)中Struts2的實(shí)現(xiàn)</p><p> 配置Struts框架首先要導(dǎo)入開(kāi)發(fā)包,然后配置web.xml。 </p><p> 1.Struts配置文件中的beans的實(shí)現(xiàn):</p><p&
50、gt; <form-beans></p><p> <form-bean name="adminForm" type="com.huo.struts.form.AdminForm" /></p><p> <form-bean name="guestbookForm" type="co
51、m.huo.struts.form.GuestbookForm" /></p><p> <form-bean name="noteForm" type="com.huo.struts.form.NoteForm" /></p><p> </form-beans></p><p>
52、 2.Struts配置文件中的action的實(shí)現(xiàn):</p><p> <action-mappings></p><p> <action attribute="guestbookForm" input="/index.jsp" name="guestbookForm"</p><p&g
53、t; path="/guestbook" scope="request" type="com.huo.struts.action.GuestbookAction"></p><p> <set-property property="cancellable" value="true" /><
54、;/p><p> <forward name="index_all" path="/index_all.jsp"</p><p> contextRelative="true" /></p><p> <forward name="reply" path="
55、/reply.jsp" contextRelative="true" /></p><p> <forward name="my_index" path="/my_index.jsp"</p><p> contextRelative="true" /></p>&
56、lt;p> <forward name="edit" path="/edit.jsp" contextRelative="true" /></p><p><b> </action></b></p><p> <action attribute="admi
57、nForm" input="/register.jsp" name="adminForm"</p><p> path="/admin" scope="request" type="com.huo.struts.action.AdminA</p><p><b> ction&
58、quot;></b></p><p> <set-property property="cancellable" value="true" /></p><p> <forward name="register_index" path="/register_index.jsp&qu
59、ot;</p><p> contextRelative="true" /></p><p> <forward name="logined_index" path="/logined_index.jsp"</p><p> contextRelative="true"
60、 /></p><p> <forward name="my_index" path="/my_index.jsp"</p><p> contextRelative="true" /></p><p> <forward name="sorry" path
61、="/sorry.jsp" contextRelative="true" /></p><p><b> </action></b></p><p> <action attribute="noteForm" input="/system.jsp" name=&
62、quot;noteForm"</p><p> path="/note" scope="request" type="com.huo.struts.action.NoteAction"></p><p> <set-property property="cancellable" val
63、ue="true" /></p><p> <forward name="index" path="/index.jsp" contextRelative="true" /></p><p><b> </action></b></p>&l
64、t;p> </action-mappings></p><p> 4.2.2 系統(tǒng)中Hibernate的實(shí)現(xiàn)</p><p> 此系統(tǒng)采用Hibernate框架可自動(dòng)生成數(shù)據(jù)庫(kù)。</p><p> Hibernate是持久化層的一種實(shí)現(xiàn)的實(shí)例方式。Hibernate不和特定的業(yè)務(wù)領(lǐng)域相關(guān),能夠把任意一個(gè)Java應(yīng)用與數(shù)據(jù)庫(kù)系統(tǒng)連接,它是一種
65、中間件。</p><p> 實(shí)現(xiàn)Hibernate首先新建文件hebernate.cfg.xml,在此文件中配置好數(shù)據(jù)庫(kù)服務(wù)器的用戶名密碼路徑等。再分別創(chuàng)建各個(gè)表的xml文件,如創(chuàng)建一個(gè)User.hbm.xml文件,將在此文件中創(chuàng)建用戶表,配置文件代碼如下。</p><p> Hibernate配置文件中的session-factory的實(shí)現(xiàn):</p><p>
66、 <session-factory></p><p> <property name="dialect"></p><p> org.hibernate.dialect.SQLServerDialect</p><p> </property></p><p> <pro
67、perty name="connection.url"></p><p> jdbc:sqlserver://localhost:1433;databaseName=guestbook</p><p> </property></p><p> <property name="connection.user
68、name">sa</property></p><p> <property name="connection.password">123456</property></p><p> <property name="connection.driver_class"></p&g
69、t;<p> com.microsoft.sqlserver.jdbc.SQLServerDriver</p><p> </property></p><p> <property name="myeclipse.connection.profile">db</property></p><p
70、> <mapping resource="com/huo/model/Guestbook.hbm.xml" /></p><p> <mapping resource="com/huo/model/Admin.hbm.xml" /></p><p> <mapping resource="com/h
71、uo/model/News.hbm.xml" /></p><p> <mapping resource="com/huo/model/Note.hbm.xml" /></p><p> </session-factory></p><p> 4.2.3 系統(tǒng)中Spring的實(shí)現(xiàn)</p>
72、<p> Spring是為了解決企業(yè)應(yīng)用開(kāi)發(fā)的復(fù)雜性而創(chuàng)建的。Spring使用基本的JavaBean來(lái)完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限于服務(wù)器端的開(kāi)發(fā)。從簡(jiǎn)單性、可測(cè)試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。</p><p> 1.Spring配置文件中sessionFactory的實(shí)現(xiàn):</p><p> <
73、;bean id="sessionFactory"</p><p> class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"></p><p> <property name="dataSource"></p><
74、;p> <ref bean="dataSource" /></p><p> </property></p><p> <property name="mappingResources"></p><p><b> <list></b><
75、/p><p><b> <value></b></p><p> com/huo/model/Guestbook.hbm.xml</p><p><b> </value></b></p><p> <value>com/huo/model/Admin.hbm
76、.xml</value></p><p> <value>com/huo/model/Note.hbm.xml</value></p><p><b> </list></b></p><p> </property></p><p> <prop
77、erty name="hibernateProperties"></p><p><b> <props></b></p><p> <prop key="hibernate.dialect"></p><p> org.hibernate.dialect.SQLSer
78、verDialect</p><p><b> </prop></b></p><p><b> </props></b></p><p> </property></p><p> 2.Spring配置文件中admin,guestbook的dao,man
79、ager的實(shí)現(xiàn):</p><p> bean id="guestbookDao" class="com.huo.dao.hibernate.GuestbookDaoHibernate"</p><p> abstract="false" lazy-init="default" autowire="
80、default"></p><p> <property name="sessionFactory"></p><p> <ref bean="sessionFactory" /></p><p> </property></p><p><
81、;b> </bean></b></p><p> <bean id="guestbookManager" class="com.huo.service.impl.GuestbookManagerImpl"</p><p> abstract="false" lazy-init="
82、default" autowire="default"></p><p> <property name="guestbookDao"></p><p> <ref bean="guestbookDao" /></p><p> </property>
83、;</p><p><b> </bean></b></p><p> <bean id="adminDao" class="com.huo.dao.hibernate.AdminDaoHibernate"</p><p> abstract="false" l
84、azy-init="default" autowire="default"></p><p> <property name="sessionFactory"></p><p> <ref bean="sessionFactory" /></p><p>
85、; </property></p><p><b> </bean></b></p><p> <bean id="adminManager" class="com.huo.service.impl.AdminManagerImpl"</p><p> abstrac
86、t="false" lazy-init="default" autowire="default"></p><p> <property name="adminDao"></p><p> <ref bean="adminDao" /></p>
87、<p> </property></p><p><b> </bean></b></p><p> <bean id="noteDao" class="com.huo.dao.hibernate.NoteDaoHibernate"</p><p> ab
88、stract="false" lazy-init="default" autowire="default"></p><p> <property name="sessionFactory"></p><p> <ref bean="sessionFactory"
89、 /></p><p> </property></p><p><b> </bean></b></p><p> <bean id="noteManager" class="com.huo.service.impl.NoteManagerImpl"</p
90、><p> abstract="false" lazy-init="default" autowire="default"></p><p> <property name="noteDao"></p><p> <ref bean="noteDao&
91、quot; /></p><p> </property></p><p><b> </bean></b></p><p> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
92、;></p><p> <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"></p><p> </property></p><p> <property name
93、="url"</p><p> value="jdbc:sqlserver://localhost:1433;databaseName=guestbook"></p><p> </property></p><p> <property name="username" val
94、ue="sa"></property></p><p> <property name="password" value="123456"></property></p><p><b> </bean></b></p><p>
95、;<b> 4.3 數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p> 本系統(tǒng)用Hibernate對(duì)數(shù)據(jù)進(jìn)行管理,將此系統(tǒng)導(dǎo)入到MyEclipse中只要配置好hibernate.cfg.xml中的URL、username、password及配置DB Browser然后將系統(tǒng)發(fā)布到Tomcat上啟動(dòng)Tomcat數(shù)據(jù)庫(kù)就可以自動(dòng)生成。</p><p> 本數(shù)據(jù)庫(kù)采用SQL ser
96、ver數(shù)據(jù)庫(kù),SQL server數(shù)據(jù)庫(kù)有以下優(yōu)點(diǎn):</p><p> SQL server以來(lái)引入了共享SQL和多線索服務(wù)器體系結(jié)構(gòu)。這減少了SQL server的資源占用,并增強(qiáng)了SQL server的能力,使之在低檔軟硬件平臺(tái)上用較少的資源就可以支持更多的用戶,而在高檔平臺(tái)上可以支持成百上千個(gè)用戶。</p><p> 提供了基于角色(ROLE)分工的安全保密管理。在數(shù)據(jù)庫(kù)管理功能
97、、完整性檢查、安全性、一致性方面都有良好的表現(xiàn)。</p><p> 支持大量多媒體數(shù)據(jù),如二進(jìn)制圖形、聲音、動(dòng)畫(huà)以及多維數(shù)據(jù)結(jié)構(gòu)等。</p><p> 提供了與第三代高級(jí)語(yǔ)言的接口軟件PRO*系列,能在C,C++等主語(yǔ)言中嵌入SQL語(yǔ)句及過(guò)程化(PL/SQL)語(yǔ)句,對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行操縱。加上它有許多優(yōu)秀的前臺(tái)開(kāi)發(fā)工具如 POWER BUILD、SQL*FORMS、VISIA BAS
98、IC 等,可以快速開(kāi)發(fā)生成基于客戶端PC 平臺(tái)的應(yīng)用程序,并具有良好的移植性。</p><p> 提供了新的分布式數(shù)據(jù)庫(kù)能力??赏ㄟ^(guò)網(wǎng)絡(luò)較方便地讀寫(xiě)遠(yuǎn)端數(shù)據(jù)庫(kù)里的數(shù)據(jù),并有對(duì)稱(chēng)復(fù)制的技術(shù)。</p><p> 基于此故選擇了SQL Sever數(shù)據(jù)庫(kù),操作比較方便,可讀性較強(qiáng),能使數(shù)據(jù)處理更加方便快捷。</p><p> 本系統(tǒng)主要用到了以下3張表。</p&
99、gt;<p> 1.用戶詳細(xì)信息表,表示用戶的所有信息,如表4-1所示。</p><p> 表4-1 T_ADMIN表</p><p> 2. 留言內(nèi)容詳細(xì)信息表,表示留言的所有信息,如留言者,留言時(shí)間,留言內(nèi)容,留言者qq,郵箱等。如表4-2所示。</p><p> 表4-2 T_GUESTBOOK表</p><p>
100、 3. 公告欄內(nèi)容信息表,顯示首頁(yè)公告欄標(biāo)題與內(nèi)容。如表4-3所示。</p><p> 表4-3 T_NOTE表</p><p> 4.4 用戶界面設(shè)計(jì)</p><p> 4.4.1 登錄界面</p><p> 1. 系統(tǒng)主界面如圖4-8所示。</p><p> 圖4-8 系統(tǒng)主界面</p>
101、<p> 此界面是本系統(tǒng)的主功能界面,在本界面上集成了本系統(tǒng)的所有功能,點(diǎn)擊“登錄”可以進(jìn)行用戶登錄。點(diǎn)“首頁(yè)”對(duì)當(dāng)前頁(yè)面進(jìn)行刷新。</p><p> 點(diǎn)擊“注冊(cè)新用戶”進(jìn)入注冊(cè)用戶界面,點(diǎn)擊“編輯”進(jìn)入信息編輯修改,點(diǎn)擊”刪除”把當(dāng)前留言刪除掉,點(diǎn)擊“所有留言”進(jìn)入顯示所有留言信息的頁(yè)面。</p><p> Index界面前臺(tái)代碼如下:</p><p&
102、gt; <%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%></p><p> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><
103、/p><p><b> <html></b></p><p><b> <head></b></p><p> <title>My JSP 'index.jsp' starting page</title></p><p> <
104、;meta http-equiv="pragma" content="no-cache"></p><p> <meta http-equiv="cache-control" content="no-cache"></p><p> <meta http-equiv="ex
105、pires" content="0"></p><p> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"></p><p> <meta http-equiv="description" co
106、ntent="This is my page"></p><p><b> </head></b></p><p><b> <body></b></p><p> This is my Test page.=============</p><p
107、><b> <br></b></p><p> <jsp:forward page="/guestbook.do?method=listAll" /></p><p><b> </body></b></p><p><b> </htm
108、l></b></p><p> 2. 登錄界面如圖4-9所示。</p><p> 圖4-8 系統(tǒng)登陸界面</p><p> 登錄界面Action實(shí)現(xiàn)主要代碼如下:</p><p> public ActionForward login(ActionMapping mapping, ActionForm form,&l
109、t;/p><p> HttpServletRequest request, HttpServletResponse response)</p><p> throws UnsupportedEncodingException {</p><p> ApplicationContext context = new ClassPathXmlApplicationCon
110、text(</p><p> "applicationContext.xml");</p><p> AdminManager mana = (AdminManagerImpl) context.getBean("adminManager");</p><p> GuestbookManager gMana = (Gue
111、stbookManagerImpl) context</p><p> .getBean("guestbookManager");</p><p> Admin a = new Admin();</p><p> String userName = new String(request.getParameter("userName
112、").getBytes(</p><p> "ISO-8859-1"), "utf-8");</p><p> String password = new String(request.getParameter("password").getBytes(</p><p> "ISO
113、-8859-1"), "utf-8");</p><p> List l = mana.getAdmin(userName, password);</p><p> if(l.size()==0){</p><p> return mapping.findForward("sorry");</p>
114、<p><b> }</b></p><p> Iterator<Admin> it = l.iterator();</p><p> while (it.hasNext()) {</p><p> a = it.next();</p><p><b> }</b>
115、</p><p> int userId = a.getUserId();</p><p> List myArticles = gMana.getMyGuestbooks(userId);</p><p> HttpSession session = request.getSession();</p><p> session.se
116、tAttribute("userName", userName);</p><p> session.setAttribute("userId", userId);</p><p> session.setAttribute("my_articles", myArticles);</p><p> S
117、ystem.out.println("login_userId = " + userId);</p><p> // List<Guestbook> articles = mana.g;</p><p> // System.out.println(articles.size());</p><p> // session.se
118、tAttribute("my_articles", articles);</p><p> // if(LoginAction.validate(request)){</p><p> // return mapping.findForward("logined_display");</p><p><b>
119、// }</b></p><p> return mapping.findForward("logined_index");</p><p><b> }</b></p><p><b> } </b></p><p> 3. 登錄出錯(cuò)界面如圖4-10所示。&
120、lt;/p><p> 圖4-10 登陸失敗界面</p><p> 出現(xiàn)此頁(yè)面的幾種情況如下:</p><p> 1.當(dāng)?shù)卿涍^(guò)后刷新時(shí),回首頁(yè)注銷(xiāo)即可。</p><p> 2.當(dāng)?shù)卿涍^(guò)但沒(méi)注銷(xiāo)就再次登錄時(shí),需先注銷(xiāo)當(dāng)前用戶再進(jìn)行登錄。</p><p> 3.當(dāng)你的用戶權(quán)限不可以刪除或修改時(shí),你可以回首頁(yè)登錄高級(jí)用戶
121、ADMINISTRATOR或普通用戶進(jìn)行修改或刪除。</p><p> 4.4.2 用戶注冊(cè)界面</p><p> 1. 注冊(cè)新用戶如圖4-11所示。</p><p> 圖4-11 注冊(cè)新用戶</p><p> 此注冊(cè)界面同時(shí)完成了用戶的添加信息和新用戶的注冊(cè),數(shù)據(jù)會(huì)將用戶名和密碼提交給T_ADMIN表。</p><
122、;p> 此注冊(cè)頁(yè)面中的手機(jī)號(hào)和郵箱等在Action層都做了相應(yīng)的校驗(yàn)。</p><p> 創(chuàng)建用戶persistence層實(shí)現(xiàn)方法如下:</p><p> public ActionForward register(ActionMapping mapping, ActionForm form,</p><p> HttpServletRequest r
123、equest, HttpServletResponse response)</p><p> throws UnsupportedEncodingException {</p><p> int flagId;</p><p> Admin a = new Admin();</p><p> ApplicationContext co
124、ntext = new ClassPathXmlApplicationContext(</p><p> "applicationContext.xml");</p><p> AdminManager mana = (AdminManagerImpl) context.getBean("adminManager");</p>&l
125、t;p> String email = new String(request.getParameter("email").getBytes(</p><p> "ISO-8859-1"), "utf-8");</p><p> String userName = new String(request.getParame
126、ter("username").getBytes(</p><p> "ISO-8859-1"), "utf-8");</p><p> String s = new String(request.getParameter("sex")</p><p> .getBytes(&qu
127、ot;ISO-8859-1"), "utf-8");</p><p> int sex = new Integer(s);</p><p> String qq = new String(request.getParameter("qq")</p><p> .getBytes("ISO-8859-1
128、"), "utf-8");</p><p> String password = new String(request.getParameter("password").getBytes(</p><p> "ISO-8859-1"), "utf-8");</p><p>
129、 String homePage = new String(request.getParameter("homePage").getBytes(</p><p> "ISO-8859-1"), "utf-8");</p><p> String name = new String(request.getParameter(&
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 留言板系統(tǒng)(畢業(yè)論文)
- 畢業(yè)論文——asp留言板
- 留言板的設(shè)計(jì)與實(shí)現(xiàn)——畢業(yè)論文
- 畢業(yè)論文-留言板模塊設(shè)計(jì)與開(kāi)發(fā)
- 職業(yè)學(xué)院畢業(yè)論文留言板的制作
- 基于java的留言板的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文
- 留言板系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)——論文
- 留言板寄語(yǔ)
- jsp留言板
- web留言板課程設(shè)計(jì)--留言板網(wǎng)頁(yè)設(shè)計(jì)
- 酒店管理系統(tǒng)──留言板塊子功能設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)論文】
- 基于java的留言板系統(tǒng)
- 回復(fù)市長(zhǎng)留言板
- 基于java的留言板系統(tǒng).doc
- 春節(jié)qq好友留言板祝福留言
- 基于php的留言板畢業(yè)設(shè)計(jì)
- 留言板網(wǎng)站的設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 軟件工程課程設(shè)計(jì)---留言板管理系統(tǒng)
- 個(gè)性留言板主人寄語(yǔ)
- jsp模板留言板設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論