2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩43頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  目 錄</b></p><p><b>  前 言1</b></p><p>  第1章技術(shù)背景3</p><p>  1.1方案分析3</p><p>  1.2開(kāi)發(fā)工具3</p><p>  1.2.1JSP簡(jiǎn)介3<

2、;/p><p>  1.2.2MySQL簡(jiǎn)介4</p><p>  1.2.3Tomcat簡(jiǎn)介4</p><p>  1.2.4MyEclipse簡(jiǎn)介4</p><p>  1.2.5MVC簡(jiǎn)介5</p><p>  1.2.6Struts 2簡(jiǎn)介6</p><p>  1.2.

3、7Hibernate簡(jiǎn)介7</p><p>  第2章需求分析8</p><p>  2.1功能分析8</p><p>  2.1.1系統(tǒng)概述8</p><p>  2.1.2基本功能要求8</p><p>  2.1.3用戶分析8</p><p>  2.1.4功能詳

4、細(xì)說(shuō)明9</p><p>  2.2性能要求11</p><p>  2.3運(yùn)行環(huán)境要求11</p><p>  2.3.1硬件環(huán)境12</p><p>  2.3.2軟件環(huán)境12</p><p>  第3章總體設(shè)計(jì)13</p><p>  3.1功能模塊劃分13<

5、;/p><p>  3.2數(shù)據(jù)庫(kù)設(shè)計(jì)13</p><p>  3.2.1person用戶表14</p><p>  3.2.2space空間信息表15</p><p>  3.2.3post日志表15</p><p>  3.2.4category分類表16</p><p>  

6、3.2.5reply日志評(píng)論表16</p><p>  3.2.6comment留言表16</p><p>  3.2.7link超鏈接表17</p><p>  3.3系統(tǒng)架構(gòu)17</p><p>  3.4系統(tǒng)運(yùn)行機(jī)制18</p><p>  第4章系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)20</p>

7、<p>  4.1類的設(shè)計(jì)與實(shí)現(xiàn)20</p><p>  4.1.1Java Bean類的設(shè)計(jì)20</p><p>  4.1.2通用類的設(shè)計(jì)21</p><p>  4.2數(shù)據(jù)庫(kù)與Hibernate配置22</p><p>  4.3Struts 2配置22</p><p>  4.

8、4模塊詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)23</p><p>  4.4.1登錄與注冊(cè)模塊23</p><p>  4.4.2日志管理模塊24</p><p>  4.4.3日志評(píng)論模塊30</p><p>  4.4.4分類模塊31</p><p>  4.4.5留言模塊33</p><p&g

9、t;  4.5系統(tǒng)配置34</p><p>  第5章結(jié) 論36</p><p><b>  參考文獻(xiàn)38</b></p><p><b>  致 謝39</b></p><p><b>  摘 要</b></p><p>  多用戶博

10、客系統(tǒng)是一個(gè)以文章形式來(lái)發(fā)布自己所見(jiàn)、所得、所聞、體會(huì)等的互聯(lián)網(wǎng)信息發(fā)布系統(tǒng),類似個(gè)人網(wǎng)站。多用戶博客系統(tǒng)是支持多用戶注冊(cè)和管理的信息發(fā)布系統(tǒng)。</p><p>  本文以博客日志發(fā)布管理為基礎(chǔ),并結(jié)合其實(shí)際需求,詳細(xì)敘述了多用戶博客系統(tǒng)設(shè)計(jì)、開(kāi)發(fā)的全過(guò)程。本系統(tǒng)主要功能包括博客的日志發(fā)布、分類和評(píng)論等。開(kāi)發(fā)過(guò)程中,采用了MVC分層思想,運(yùn)用了當(dāng)今比較流行的Web前端開(kāi)發(fā)技術(shù)JavaScript等。</p&

11、gt;<p>  本系統(tǒng)基于B/S架構(gòu),采用java為開(kāi)發(fā)語(yǔ)言、MySQL為數(shù)據(jù)庫(kù),Tomcat為服務(wù)器并結(jié)合功能強(qiáng)大的開(kāi)源框架Struts 2和Hibernate為開(kāi)發(fā)框架,從而保證了整個(gè)系統(tǒng)穩(wěn)定、快速、高效的運(yùn)行。</p><p>  關(guān)鍵詞:博客,MVC,B/S,穩(wěn)定性</p><p><b>  Abstract</b></p>&

12、lt;p>  Multi-user blog system is one of the articles form to publish their own findings obtained, the smell, experience and other Internet information release system, similar to the personal website. Multi-user blog s

13、ystem is an information release system to support multi-user registration and management.</p><p>  In this paper, based on post publishing and management, combined with their actual requirement, detailed des

14、cription of the multi-user blog system design and development at the entire process. The main features include post publish, category and comments, etc... In the development process, using the MVC layered thinking, the u

15、se of today's popular Web front-end development technologies JavaScript, etc.</p><p>  The system is based on B / S structure, to use JAVA language,MySQL database and Tomcat Server. Combined with a power

16、ful open-source JAVA framework for Struts 2 and Hibernate as a development framework, thus ensuring the entire system is stable, fast, and efficient.</p><p>  Key words: Blog, MVC, B/S, stable</p><

17、;p><b>  前 言</b></p><p>  隨著互聯(lián)網(wǎng)技術(shù)的高速發(fā)展和日益的普及,互聯(lián)網(wǎng)用戶迅速增加,用戶對(duì)互聯(lián)網(wǎng)的寄托也發(fā)生了翻天覆地的變化,用戶不甘于只單單的被動(dòng)的接受互聯(lián)網(wǎng)提供的內(nèi)容,更希望能夠加入到內(nèi)容制造的大家庭中,這時(shí)傳統(tǒng)的Web應(yīng)用已經(jīng)顯得力不從心,而Web 2.0的出現(xiàn),極大的改變了這一局面。所謂Web 2.0其核心就是用戶不只是內(nèi)容的被動(dòng)瀏覽者,同時(shí)也是內(nèi)容

18、的制造者。正是因?yàn)檎麄€(gè)互聯(lián)網(wǎng)產(chǎn)品設(shè)計(jì)理念的重大變化,具有代表性的Web 2.0時(shí)代的互聯(lián)網(wǎng)產(chǎn)品也就相繼出現(xiàn),如:論壇,博客、威客,社區(qū)、RSS和SNS等。</p><p>  博客也稱為網(wǎng)絡(luò)日志,是blog的諧音,由很多經(jīng)常更新的帖子(也叫日志或者個(gè)人文章)順序倒序排列,最新的帖子在最上面,這些帖子的內(nèi)容不一定要長(zhǎng)篇大論,具體內(nèi)容格式也沒(méi)有任何要求,它以個(gè)人純粹的個(gè)人想法和心得,包括你對(duì)時(shí)事新聞、國(guó)家大事的個(gè)人看

19、法,或者一日三餐、服飾打扮的精心料理等,也可以是在基于某一主題的情況下或者是在某一共同領(lǐng)域內(nèi)由一群人集體創(chuàng)作的內(nèi)容。類似于傳統(tǒng)的“網(wǎng)絡(luò)日志”,但又不同于傳統(tǒng)的“網(wǎng)絡(luò)日志“,傳統(tǒng)的”網(wǎng)絡(luò)日志“是帶有顯示的私人性質(zhì)的,而博客則是私人性和公共性的有效結(jié)合,絕不僅僅是純粹個(gè)人思想的表達(dá)和日常瑣事的記錄,它所提供的內(nèi)容可以用來(lái)進(jìn)行交流和為他人提供幫助,是可以包容事個(gè)互聯(lián)網(wǎng)的,具有極高的共享精神和價(jià)值。博客還有個(gè)最大的特點(diǎn)是可以圖文并茂的描述一件事

20、,在文字、圖片和視頻等的共同描述下,使得內(nèi)容更加生動(dòng)形象。博客由2000年悄然進(jìn)入中國(guó),隨后得到迅速發(fā)展,但業(yè)績(jī)平平,直到2004年由于某一事件,才讓民眾了解博客,并運(yùn)用博客。2005年,財(cái)大氣粗的原本不看好博客的幾大門(mén)戶,也加入到博客的春秋戰(zhàn)國(guó)時(shí)代,開(kāi)始了你死我活的拼殺。</p><p>  Web 2.0和傳統(tǒng)Web 1.0應(yīng)用相比,有一個(gè)非常顯著的特點(diǎn),即:實(shí)時(shí)性和較高的交互性,正是因?yàn)檫@一實(shí)時(shí)性和較高的交

21、互性,傳統(tǒng)的互聯(lián)網(wǎng)開(kāi)發(fā)技術(shù)也面臨的嚴(yán)峻的挑戰(zhàn)。在傳統(tǒng)的應(yīng)用中,內(nèi)容一旦發(fā)布,基本不會(huì)更新,為了減少服務(wù)器的的負(fù)載,一般會(huì)將內(nèi)容歸檔成靜態(tài)文件(后綴為.html的文件)存在磁盤(pán)中,并根據(jù)內(nèi)容在數(shù)據(jù)庫(kù)中的唯一標(biāo)識(shí)號(hào)生成一個(gè)唯一的url地址。當(dāng)用戶需要查看這些內(nèi)容時(shí),直接通過(guò)所生成的唯一的URL地址,經(jīng)過(guò)服務(wù)器就直接能訪問(wèn)到這些內(nèi)容,服務(wù)器基本不需要花費(fèi)時(shí)間來(lái)生成這些內(nèi)容,這對(duì)于服務(wù)器軟硬件資源是一個(gè)很大的節(jié)省。而新形勢(shì)下(Web2.0)的應(yīng)

22、用,由于它的實(shí)時(shí)性和較高的交互性,就注定了不能完全采用生成靜態(tài)文件方式來(lái)解決這一問(wèn)題,頁(yè)面可能會(huì)實(shí)時(shí)更新,從而需要實(shí)時(shí)的請(qǐng)求數(shù)據(jù)庫(kù),將所請(qǐng)求的內(nèi)容展現(xiàn)在用戶面前。由于數(shù)據(jù)的動(dòng)態(tài)生成。無(wú)疑會(huì)添加服務(wù)器的處理能力,在服務(wù)器端并發(fā)性一定的情況下,由于請(qǐng)求的用戶過(guò)多,而服務(wù)器又一時(shí)處理不過(guò)來(lái),所請(qǐng)求的用戶必然會(huì)經(jīng)歷一個(gè)排隊(duì)的過(guò)程,從而使得系統(tǒng)的整體響應(yīng)時(shí)候大幅度添加,這樣的用戶體驗(yàn)也就不言而喻了。以上這些都是做一個(gè)Web2.0應(yīng)用所必考慮的問(wèn)題

23、</p><p><b>  技術(shù)背景</b></p><p>  本章將從系統(tǒng)的技術(shù)方案及與此相關(guān)的開(kāi)發(fā)工具進(jìn)行說(shuō)明</p><p><b>  方案分析</b></p><p>  由于博客提供了信息的實(shí)時(shí)發(fā)布,動(dòng)態(tài)展示,信息狀態(tài)的跟蹤,以及博客和瀏覽者、博客和博客之間互動(dòng)等這些高交互行為,就注

24、定了對(duì)技術(shù)的要求會(huì)比較苛刻,必需選擇一種技術(shù)架構(gòu)成熟,穩(wěn)定性好,執(zhí)行效率高、經(jīng)濟(jì)實(shí)惠的解決方案??v觀各種解決方案,最終選擇JAVA作為博客系統(tǒng)的技術(shù)路線。</p><p>  本系統(tǒng)以JAVA為技術(shù)路線,結(jié)合以JavaEE為基礎(chǔ)的綜合開(kāi)發(fā)平臺(tái)MyEclipse,開(kāi)源數(shù)據(jù)庫(kù)MySQL和開(kāi)源服務(wù)器Tomcat,技術(shù)框架主要采用當(dāng)今流行的Struts2和Hibernate。它們都是各自獨(dú)立的程序,但是因?yàn)殚L(zhǎng)期的放在一起

25、使用,擁有越來(lái)越高的兼容性,共同組建了一個(gè)強(qiáng)大的Web應(yīng)用開(kāi)發(fā)平臺(tái)。其中MySQL,Tomcat,Struts2和Hibernate均為開(kāi)源免費(fèi)的軟件,由于他們的開(kāi)源,標(biāo)志著任何人都可以無(wú)償?shù)拿赓M(fèi)使用它們,也意味著越來(lái)越多的開(kāi)發(fā)者加入到其中,無(wú)償?shù)姆瞰I(xiàn)他們的智慧,使得軟件的效率和性能得到很大程度的提高。因此,JavaEE是當(dāng)今比較強(qiáng)大的互聯(lián)網(wǎng)解決方案。</p><p><b>  開(kāi)發(fā)工具</b&

26、gt;</p><p>  本系統(tǒng)以JavaEE為解決方案,JavaEE不只是穩(wěn)定性好,效率高和開(kāi)源免費(fèi),它還有一個(gè)更重要的特點(diǎn),那就是運(yùn)行平臺(tái)無(wú)關(guān)性。它除了能運(yùn)行在Windows操作系統(tǒng)上外,還能運(yùn)行在Linux,蘋(píng)果等操作系統(tǒng)上,真正做到一處開(kāi)發(fā),多處運(yùn)行。綜合各方面因素,最終決定在Windows操作系統(tǒng)上進(jìn)行開(kāi)發(fā)。本系統(tǒng)采用現(xiàn)今流行的MVC設(shè)計(jì)模式,從而使整個(gè)系統(tǒng)的架構(gòu)更加清晰。為了提高客戶端的用戶體驗(yàn),系

27、統(tǒng)中還會(huì)借助客戶端技術(shù)JavaScript腳本語(yǔ)言等相關(guān)技術(shù)。以下為各自的介紹。</p><p><b>  JSP簡(jiǎn)介</b></p><p>  JSP(Java Server Pages) [1]是由Sun Microsystems公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。 JSP技術(shù)有點(diǎn)類似ASP技術(shù),它是在傳統(tǒng)的網(wǎng)頁(yè)HTML文件(*.htm,*.

28、html)中插入Java程序段(Scriptlet)和JSP標(biāo)記(tag),從而形成JSP文件(*.jsp)。用JSP開(kāi)發(fā)的Web應(yīng)用是跨平臺(tái)的,既能在Linux下運(yùn)行,也能在其他操作系統(tǒng)上運(yùn)行。 總的來(lái)說(shuō),它具有以下幾個(gè)方面的優(yōu)點(diǎn):</p><p>  1.一次編寫(xiě),到處運(yùn)行。在這一點(diǎn)上Java比PHP更出色,除了系統(tǒng)之外,代碼不用做任何更改[4]。</p><p>  2.系統(tǒng)的多平臺(tái)

29、支持?;旧峡梢栽谒衅脚_(tái)上的任意環(huán)境中開(kāi)發(fā),在任意環(huán)境中進(jìn)行系統(tǒng)部署,在任意環(huán)境中擴(kuò)展。相比ASP/PHP的局限性是顯而易見(jiàn)的[4]。 </p><p>  3.強(qiáng)大的可伸縮性。從只有一個(gè)小的Jar文件就可以運(yùn)行Servlet/JSP,到由多臺(tái)服務(wù)器進(jìn)行集群和負(fù)載均衡,到多臺(tái)Application進(jìn)行事務(wù)處理,消息處理,一臺(tái)服務(wù)器到無(wú)數(shù)臺(tái)服務(wù)器,Java顯示了一個(gè)巨大的生命力[4]。 </p>

30、<p>  4.多樣化和功能強(qiáng)大的開(kāi)發(fā)工具支持。這一點(diǎn)與ASP很像,Java已經(jīng)有了許多非常優(yōu)秀的開(kāi)發(fā)工具,而且許多可以免費(fèi)得到,并且其中許多已經(jīng)可以順利的運(yùn)行于多種平臺(tái)之下[4]。</p><p><b>  MySQL簡(jiǎn)介</b></p><p>  MySQL是基于SQL的,完全網(wǎng)絡(luò)化的跨平臺(tái)關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng),同時(shí)是具有客戶機(jī)/服務(wù)器體系結(jié)構(gòu)的分布式數(shù)

31、據(jù)庫(kù)管理系統(tǒng)[2]。它具有體積小,功能強(qiáng),使用簡(jiǎn)便,管理方便,運(yùn)行速度快,安全可靠性高,尤其是開(kāi)源這一特點(diǎn),所以很多企業(yè)為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)絡(luò)數(shù)據(jù)庫(kù)。更重要的是提供了用于C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl的API,從而可以很容易的將其加入到各種應(yīng)用中[6]。</p><p><b>  Tomcat簡(jiǎn)介</b>&l

32、t;/p><p>  Tomcat是Apache 軟件基金會(huì)(Apache Software Foundation)[3]的Jakarta 項(xiàng)目中的一個(gè)核心項(xiàng)目,由Apache、Sun 和其他一些公司及個(gè)人共同開(kāi)發(fā)而成。由于有了Sun 的參與和支持,最新的Servlet 和JSP 規(guī)范總是能在Tomcat 中得到體現(xiàn),Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 規(guī)范。因?yàn)門(mén)omcat 技術(shù)先

33、進(jìn)、性能穩(wěn)定,而且免費(fèi),因而深受Java 愛(ài)好者的喜愛(ài)并得到了部分軟件開(kāi)發(fā)商的認(rèn)可,成為目前比較流行的Web 應(yīng)用服務(wù)器。</p><p>  MyEclipse簡(jiǎn)介</p><p>  MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipse Enterprise Workbench ,簡(jiǎn)稱MyEclipse)是對(duì)Eclipse IDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫(kù)和J2EE的開(kāi)發(fā)、發(fā)布,以

34、及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的J2EE集成開(kāi)發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。</p><p><b>  MVC簡(jiǎn)介</b></p><p>  MVC是一個(gè)設(shè)計(jì)模式,它強(qiáng)制性的使應(yīng)用程序的輸入、處理和輸出分開(kāi)。使

35、用MVC應(yīng)用程序被分成三個(gè)核心部件:模型、視圖、控制器。它們各自處理自己的任務(wù)。</p><p><b>  優(yōu)點(diǎn)如下:</b></p><p><b>  1. 低耦合性</b></p><p>  視圖層和業(yè)務(wù)層分離:這樣就允許更改視圖層代碼而不用重新編譯模型和控制器代碼,同樣,一個(gè)應(yīng)用的業(yè)務(wù)流程或者業(yè)務(wù)規(guī)則的改變只需

36、要改動(dòng)MVC的模型層即可。因?yàn)槟P团c控制器和視圖相分離,所以很容易改變應(yīng)用程序的數(shù)據(jù)層和業(yè)務(wù)規(guī)則。</p><p>  2. 高重用性和可適用性</p><p>  隨著技術(shù)的不斷進(jìn)步,現(xiàn)在需要用越來(lái)越多的方式來(lái)訪問(wèn)應(yīng)用程序。MVC模式允許你使用各種不同樣式的視圖來(lái)訪問(wèn)同一個(gè)服務(wù)器端的代碼。它包括任何WEB(HTTP)瀏覽器或者無(wú)線瀏覽器(wap),比如,用戶可以通過(guò)電腦也可通過(guò)手機(jī)來(lái)訂購(gòu)

37、某樣產(chǎn)品,雖然訂購(gòu)的方式不一樣,但處理訂購(gòu)產(chǎn)品的方式是一樣的。由于模型返回的數(shù)據(jù)沒(méi)有進(jìn)行格式化,所以同樣的構(gòu)件能被不同的界面使用。例如,很多數(shù)據(jù)可能用HTML來(lái)表示,但是也有可能用WAP來(lái)表示,而這些表示所需要的僅令是改變視圖層的實(shí)現(xiàn)方式,而控制層和模型層無(wú)需做任何改變。</p><p><b>  3.較低的生命周期</b></p><p>  MVC使降低開(kāi)發(fā)和維

38、護(hù)用戶接口的技術(shù)含量成為可能。</p><p><b>  4.快速的部署</b></p><p>  使用MVC模式[3]使開(kāi)發(fā)時(shí)間得到相當(dāng)大的縮減,它使程序員集中精力于業(yè)務(wù)邏輯,界面程序員(HTML開(kāi)發(fā)人員)集中精力于表現(xiàn)形式上。</p><p><b>  5.可維護(hù)性</b></p><p>

39、;  分熟視圖層和業(yè)務(wù)邏輯層也使得WEB應(yīng)用更易于維護(hù)和修改。</p><p>  6.有利于軟件工程化管理</p><p>  由于不同的層各司其職,每一層不同的應(yīng)用具有某些相同的特征,有利于通過(guò)工程化、工具化管理程序代碼。</p><p>  圖1-1 MVC模型</p><p>  Struts 2簡(jiǎn)介</p><

40、p>  雖然Struts 2號(hào)稱是一個(gè)全新的框架,但這僅僅是相對(duì)Struts 1而言。Struts 2 與Struts 1相比,確實(shí)有很多革命性的改進(jìn),但它并不是新發(fā)布的新框架,而是在另一個(gè)赫赫有名的框架:WebWork[5]基礎(chǔ)上發(fā)展起來(lái)的。從某種程度上來(lái)講,Struts 2沒(méi)有繼承Struts 1的血統(tǒng),而是繼承WebWork的血統(tǒng)?;蛘哒f(shuō),WebWork衍生出了Struts 2,而不是Struts 1衍生了Struts2。因

41、為Struts2是WebWork的升級(jí),而不是一個(gè)全新的框架,因此穩(wěn)定性、性能等各方面都有很好的保證:而且吸收了Struts 1和WebWork兩者的優(yōu)勢(shì),因此,是一個(gè)非常值得期待的框架。</p><p>  Apache Struts 2是一個(gè)優(yōu)雅的,可擴(kuò)展的JAVA EE web框架??蚣茉O(shè)計(jì)的目標(biāo)貫穿整個(gè)開(kāi)發(fā)周期,從開(kāi)發(fā)到發(fā)布,包括維護(hù)的整個(gè)過(guò)程。</p><p>  Apache

42、Struts 2即是之前大家所熟知的WebWork 2。在經(jīng)歷了幾年的各自發(fā)展后,WebWork和Struts社區(qū)決定合二為一,也即是Struts 2。</p><p>  圖1-2 Struts2模型</p><p>  Hibernate簡(jiǎn)介</p><p>  Hibernate是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使得

43、Java程序員可以隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù)據(jù)庫(kù)。 Hibernate可以應(yīng)用在任何使用JDBC的場(chǎng)合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。Hibernate的核心接口一共有5個(gè),分別為:Session、SessionFactory、Transaction、Query和Config

44、uration[5]。這5個(gè)核心接口在任何開(kāi)發(fā)中都會(huì)用到。通過(guò)這些接口,不僅可以對(duì)持久化對(duì)象進(jìn)行存取,還能夠進(jìn)行事務(wù)控制。</p><p><b>  需求分析</b></p><p>  本章主要從多用戶博客系統(tǒng)的各功能需求、性能、運(yùn)行環(huán)境幾個(gè)方面進(jìn)行描述。</p><p><b>  功能分析</b></p>

45、;<p>  本節(jié)主要對(duì)本系統(tǒng)的具體需求進(jìn)行描述,包括需要提供的功能以及各功能的具體定義。</p><p><b>  系統(tǒng)概述</b></p><p>  本系統(tǒng)的最主要功能是體現(xiàn)多用戶的使用,用戶可以在本系統(tǒng)注冊(cè)申請(qǐng)自己的博客。一旦用戶申請(qǐng)了自己的博客,就可以將心得體會(huì)等發(fā)表到自己的博客上,當(dāng)發(fā)表了自己的心得體現(xiàn)后,瀏覽者就可以對(duì)用戶所發(fā)表的日志的內(nèi)

46、容進(jìn)行評(píng)論,注冊(cè)用戶還可以在自己的博客上添加博客描述及超鏈接。此外,瀏覽者還可以在博主空間留言,與博主進(jìn)行交互。</p><p><b>  基本功能要求</b></p><p>  系統(tǒng)提供的主要功能包括以下幾個(gè)方面:</p><p>  1. 博主的注冊(cè)和登錄</p><p>  2. 日志的發(fā)布和管理,包括日志管理

47、和分類選擇功能,其中日志管理功能包括日志的 添加、刪除和修改,分類選擇功能包括分類的添加、刪除和修改。</p><p>  3. 文章評(píng)論,包括評(píng)論的添加、刪除、修改三大功能。</p><p>  4. 留言管理,包括留言的添加、刪除、修改三大功能。</p><p>  5. 系統(tǒng)管理后臺(tái),主要包括用戶管理、日志管理、留言管理和評(píng)論管理四大功能。&

48、lt;/p><p><b>  用戶分析</b></p><p>  本系統(tǒng)主要包括以下幾類用戶:</p><p><b>  1.游客</b></p><p>  此類用戶不是本系統(tǒng)的用戶或者沒(méi)有登錄、對(duì)于當(dāng)前系統(tǒng)來(lái)講,只是一名匿名的瀏覽者。在系統(tǒng)中,所有游客都沒(méi)有身份標(biāo)識(shí),他們可以瀏覽博客中的日志

49、和發(fā)表匿名的評(píng)論。</p><p><b>  2.注冊(cè)用戶</b></p><p>  此類用戶和游客的唯一區(qū)別為該類用戶屬于系統(tǒng)登錄用戶,在系統(tǒng)中有用戶ID作為他們的唯一標(biāo)識(shí),并擁有自己的博客。用戶瀏覽其它用戶的博客時(shí),僅僅是一個(gè)有身份標(biāo)識(shí)的瀏覽者而已,但一旦用戶進(jìn)入了自己的博客主頁(yè),那么這時(shí)身份除了是一名瀏覽者外,還是一名博主,這時(shí)將擁有博主的所有權(quán)限。<

50、;/p><p><b>  3.博主</b></p><p>  此類用戶即為擁有博客的用戶,是注冊(cè)用戶的一種特例,有管理博客的權(quán)限。該用戶擁有上述所有用戶的權(quán)限,當(dāng)該用戶瀏覽其它用戶的博客時(shí),當(dāng)前身份就變成了登錄瀏覽者身份,不再具有博主的身份,只有當(dāng)該用戶進(jìn)入自己的博客主頁(yè)時(shí),才會(huì)所有博主的身份。</p><p><b>  4.系

51、統(tǒng)管理員</b></p><p>  該類用戶為博客系統(tǒng)的網(wǎng)站管理員,本應(yīng)具有上述用戶的所有管理權(quán)限,為了減少系統(tǒng)的復(fù)雜度,這里只具有系統(tǒng)后臺(tái)的管理功能。</p><p><b>  功能詳細(xì)說(shuō)明</b></p><p>  本節(jié)將從用戶用例的角度來(lái)描述系統(tǒng)的具體功能,本博客系統(tǒng)主要用例包括:游客用例、注冊(cè)用戶用例、博主用例和系統(tǒng)管

52、理員用途,以下是詳細(xì)描述。</p><p>  圖2-1 游客用例圖</p><p>  圖2-1用例說(shuō)明如下:</p><p>  瀏覽日志:閱讀系統(tǒng)內(nèi)所用博客的日志。</p><p>  發(fā)表留言:對(duì)瀏覽過(guò)的博客空間進(jìn)行留言,由于游客沒(méi)有身份標(biāo)識(shí),所以只能匿名留言。</p><p>  發(fā)表評(píng)論:對(duì)瀏覽過(guò)的日志進(jìn)行

53、評(píng)論,由于游客沒(méi)有身份標(biāo)識(shí),所以只能匿名評(píng)論。</p><p>  2. 注冊(cè)用戶用例圖</p><p>  圖2-2 注冊(cè)用戶用例圖</p><p>  圖2-2用例說(shuō)明如下:</p><p>  瀏覽日志: 閱讀系統(tǒng)內(nèi)所用博客的日志。</p><p>  發(fā)表留言:對(duì)瀏覽過(guò)的博客空間進(jìn)行留言,由于注冊(cè)用戶具有身份標(biāo)

54、識(shí),所以在留言時(shí)可以自己身份或匿名身份進(jìn)行留言。</p><p>  發(fā)表評(píng)論:對(duì)瀏覽過(guò)的日志進(jìn)行評(píng)論,由于注冊(cè)用戶具有身份標(biāo)識(shí),所以在對(duì)日志評(píng)論時(shí)可以自己身份或匿名身份進(jìn)行評(píng)論。</p><p>  個(gè)人資料管理:可以對(duì)自己的個(gè)人資料進(jìn)行更新。</p><p>  圖2-3 博主用例圖</p><p>  圖2-3用例說(shuō)明如下:</p

55、><p>  日志管理:對(duì)博客日志進(jìn)行管理,具體操作包括:發(fā)布日志、修改日志、刪除日志。</p><p>  評(píng)論管理:對(duì)日志的評(píng)論進(jìn)行管理,具體操作包括:添加評(píng)論、刪除評(píng)論。</p><p>  留言管理:對(duì)博客空間的留言進(jìn)行管理,具體操作包括:添加留言,刪除留言。</p><p>  超鏈接管理:對(duì)博客空間的超鏈接進(jìn)行管理,具體操作包括:添加

56、鏈接,修改鏈接,刪除鏈接。</p><p>  圖2-4 系統(tǒng)管理員用例圖</p><p>  圖2-4用例說(shuō)明如下:</p><p>  用戶管理:對(duì)系統(tǒng)中的所有用戶進(jìn)行管理,管理員可以根據(jù)用戶名搜索用戶,對(duì)一些違法的用戶,管理員可以對(duì)其進(jìn)行刪除。</p><p>  日志管理:對(duì)系統(tǒng)中的所有日志進(jìn)行管理,管理員可通過(guò)日志標(biāo)題進(jìn)行搜索,管理

57、員本身也可以發(fā)表日志,還可以對(duì)違法違規(guī)日志進(jìn)行刪除。</p><p>  評(píng)論管理:對(duì)系統(tǒng)中所有的日志評(píng)論進(jìn)行管理,管理員可通過(guò)日志標(biāo)題搜索其對(duì)應(yīng)的評(píng)論,對(duì)其中不合法的評(píng)論進(jìn)行刪除。</p><p>  留言管理:對(duì)系統(tǒng)中所有的留言進(jìn)行管理,管理員可以通過(guò)用戶名搜索其對(duì)應(yīng)空間的留言,對(duì)其中不合法的留言進(jìn)行刪除。</p><p><b>  性能要求<

58、/b></p><p>  本系統(tǒng)為實(shí)時(shí)性內(nèi)容發(fā)布平臺(tái),因此服務(wù)器需要7×24小時(shí)運(yùn)行,確保系統(tǒng)能正常運(yùn)行,系統(tǒng)響應(yīng)時(shí)間必須在1秒內(nèi),頁(yè)面響應(yīng)時(shí)間不能超過(guò)3秒,并且頁(yè)面不能出現(xiàn)假死現(xiàn)象。</p><p><b>  運(yùn)行環(huán)境要求</b></p><p>  本系統(tǒng)為開(kāi)發(fā)階段的版本,因此系統(tǒng)架構(gòu)都在同一臺(tái)電腦上,硬件與軟件規(guī)模均處

59、于測(cè)試階段,未能達(dá)到商業(yè)用途的要求。</p><p>  本節(jié)將從硬件環(huán)境與軟件環(huán)境兩方面來(lái)進(jìn)行描述。</p><p><b>  硬件環(huán)境</b></p><p>  ASUS筆記本電腦一臺(tái)</p><p><b>  軟件環(huán)境</b></p><p><b> 

60、 總體設(shè)計(jì)</b></p><p>  本章將從整個(gè)系統(tǒng)的功能模塊劃分、數(shù)據(jù)庫(kù)設(shè)計(jì)、系統(tǒng)架構(gòu)、運(yùn)行機(jī)制等幾個(gè)方面進(jìn)行描述.</p><p><b>  功能模塊劃分</b></p><p>  多用戶博客系統(tǒng)從整個(gè)架構(gòu)特點(diǎn)來(lái)看,主要由用戶博客首頁(yè)、用戶博客后臺(tái)、系統(tǒng)博客首頁(yè)和系統(tǒng)博客后臺(tái)4個(gè)大的功能模塊組合而成,系統(tǒng)總體功能模塊如圖

61、3-1所示。</p><p>  圖3-1 系統(tǒng)總體功能模塊圖</p><p>  系統(tǒng)博客首頁(yè):系統(tǒng)博客首頁(yè)主要是對(duì)所有用戶的博客信息進(jìn)行按照一些的排序方式進(jìn)行統(tǒng)一展現(xiàn)。</p><p>  系統(tǒng)博客后臺(tái):系統(tǒng)博客后臺(tái)主要是對(duì)系統(tǒng)內(nèi)的所有信息進(jìn)行統(tǒng)一管理,如:對(duì)非法信息進(jìn)行清除等操作。</p><p>  用戶博客首頁(yè):用戶博客首頁(yè)主要是對(duì)

62、用戶個(gè)人的博客內(nèi)容進(jìn)行展現(xiàn)。</p><p>  用戶博客后臺(tái):用戶博客后臺(tái)主要是用戶的博客內(nèi)容進(jìn)行管理,如:日志的發(fā)布,刪除等操作。</p><p><b>  數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p>  本系統(tǒng)主要由7個(gè)基本表組成,分別為person(用戶表),space(空間信息表),post(日志表),category(分類表),reply

63、(日志評(píng)論表),comment(留言表),link(超鏈接表),各表關(guān)系如下圖所示:</p><p>  圖3-2 數(shù)據(jù)庫(kù)各表關(guān)系圖</p><p><b>  person用戶表</b></p><p>  用戶表記錄用戶基本信息,結(jié)構(gòu)如表3-1所示:</p><p>  表3-1 person用戶表</p>

64、;<p>  space空間信息表</p><p>  空間信息表記錄了用戶空間的信息,結(jié)構(gòu)如表3-2所示:</p><p>  表3-2 space空間信息表</p><p><b>  post日志表</b></p><p>  日志表記錄了日志的詳細(xì)信息,結(jié)構(gòu)如表3-3所示:</p>&

65、lt;p>  表3-3 post日志表</p><p>  category分類表</p><p>  分類表記錄了日志的分類信息,結(jié)構(gòu)如表3-4所示:</p><p>  表3-4 category分類表</p><p>  reply日志評(píng)論表</p><p>  日志評(píng)論表記錄了日志的相關(guān)評(píng)論信息,結(jié)構(gòu)如表

66、3-5所示:</p><p>  表3-5 reply日志評(píng)論表</p><p>  comment留言表</p><p>  留言表記錄了他人對(duì)博主空間的留言,結(jié)構(gòu)如表3-6所示:</p><p>  表3-6 comment留言表</p><p><b>  link超鏈接表</b></

67、p><p>  超鏈接表記錄了用戶設(shè)置的超鏈接信息,結(jié)構(gòu)如表3-7所示:</p><p>  表3-7 link超鏈接表</p><p><b>  系統(tǒng)架構(gòu)</b></p><p>  系統(tǒng)將采用提供Web服務(wù)器的經(jīng)典架構(gòu),即:B/S(Browse/Server)架構(gòu),該架構(gòu)和傳統(tǒng)的架構(gòu)C/S(Client/Server)

68、最大的不同在于,傳統(tǒng)架構(gòu)不但要提供服務(wù)器端(Server)的程序,還需要提供一個(gè)客戶端(Client)程序,當(dāng)軟件有更新時(shí),需要所有客戶端同時(shí)升級(jí)才能享受到你的功能,所以軟件升級(jí)成本比較高。而B(niǎo)/S架構(gòu)則很好的解決了這一問(wèn)題,該架構(gòu)的最終系統(tǒng)代碼只需要放在Web服務(wù)器上,而用戶僅僅通過(guò)瀏覽器就能輕松訪問(wèn)系統(tǒng),而對(duì)于系統(tǒng)的升級(jí),只需要將系統(tǒng)代碼更新到Web服務(wù)器上,用戶就能享受到新系統(tǒng)所帶來(lái)的功能體驗(yàn)。</p><p&

69、gt;  系統(tǒng)總體架構(gòu)如圖3-3所示:</p><p>  圖3-3 系統(tǒng)總體架構(gòu)圖</p><p>  Browser為用戶瀏覽器,即安裝在用戶電腦上的WEB瀏覽器。對(duì)于用戶瀏覽器來(lái)說(shuō)只需要和WEB服務(wù)器進(jìn)行交互,而WEB服務(wù)器再與系統(tǒng)交互,把結(jié)果返回給用戶瀏覽器。而數(shù)據(jù)庫(kù)也是和系統(tǒng)交互,將結(jié)果統(tǒng)一給WEB服務(wù)器返回給用戶瀏覽器。用戶瀏覽器與WEB服務(wù)器采用HTTP協(xié)議進(jìn)行通信,而系統(tǒng)和

70、數(shù)據(jù)之間的通信則采用底層的TCP/TP協(xié)議進(jìn)行。</p><p><b>  系統(tǒng)運(yùn)行機(jī)制</b></p><p>  本節(jié)主要對(duì)整個(gè)系統(tǒng)運(yùn)行平臺(tái)的運(yùn)行機(jī)制加以說(shuō)明,運(yùn)行平臺(tái)基于windows平臺(tái),而開(kāi)發(fā)平臺(tái)主要是基于面向?qū)ο蟮腏AVA語(yǔ)言,另外整合了JAVA WEB流行框架Struts2和Hibernate。</p><p>  Window

71、s平臺(tái)運(yùn)行機(jī)制如圖3-4所示:</p><p>  圖3-4 windows運(yùn)行平臺(tái)機(jī)制圖</p><p>  如圖3-4所示,運(yùn)行機(jī)制為:用戶在瀏覽器里輸入博客系統(tǒng)地址,然后瀏覽器通過(guò)HTTP請(qǐng)求訪問(wèn)提供服務(wù)的服務(wù)器的8080端口,由于在服務(wù)器上8080端口由Tomcat服務(wù)器提供,所以操作系統(tǒng)把整個(gè)請(qǐng)求交給Tomcat來(lái)處理,Tomcat通過(guò)用戶的請(qǐng)求地址,識(shí)別出系統(tǒng)采用JSP語(yǔ)言編寫(xiě)

72、,這里Tomcat服務(wù)器需要調(diào)用JSP解析引擎來(lái)對(duì)指定的博客系統(tǒng)源碼進(jìn)行解析,然后將JSP返回的結(jié)果返回給用戶瀏覽器,最終用戶就能夠通過(guò)瀏覽器看到博客系統(tǒng)的界面了。在JSP解析博客系統(tǒng)的過(guò)程中,如果需要從數(shù)據(jù)庫(kù)里取數(shù)據(jù),則通過(guò)TCP/TP建立起MySQL數(shù)據(jù)庫(kù)服務(wù)器的連接。最終通過(guò)JSP將需要返回,這一步是在JSP內(nèi)部完成。</p><p><b>  系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)</b></p

73、><p>  本章將描述整個(gè)博客系統(tǒng)最核心的部分,主要從各功能的具體設(shè)計(jì)方法和主要實(shí)現(xiàn)代碼方面描述。</p><p><b>  類的設(shè)計(jì)與實(shí)現(xiàn)</b></p><p>  在博客系統(tǒng)中,類的設(shè)計(jì)主要分為兩類:一類是Java Bean,還有一類是通用工具類。其他類為次要,在此不另外說(shuō)明。</p><p>  Java Bea

74、n類的設(shè)計(jì)</p><p>  Java Bean一般用來(lái)封裝業(yè)務(wù)邏輯、數(shù)據(jù)庫(kù)操作以及在系統(tǒng)存儲(chǔ)和傳遞數(shù)據(jù)的實(shí)體,是整個(gè)軟件的核心部分。Java Bean類圖如下4-1所示(圖中省略了getter()和setter()方法):</p><p>  圖4-1 Java Bean類圖</p><p><b>  如圖4-1所示:</b></p

75、><p>  Person Bean</p><p>  用來(lái)保存用戶的基本信息,包括:用戶ID,帳號(hào),密碼,昵稱,電子郵箱,性別,注冊(cè)時(shí)間,注冊(cè)IP,是否為管理員。</p><p>  Space Bean</p><p>  用來(lái)保存用戶空間的信息,包括:空間ID,空間名,空間描述。</p><p><b>

76、  Post Bean</b></p><p>  用來(lái)保存用戶日志的信息,包括:日志ID,標(biāo)題,內(nèi)容,被點(diǎn)擊數(shù),創(chuàng)建時(shí)間,所屬空間以及所屬分類。</p><p>  Category Bean</p><p>  用來(lái)保存分類的信息,包括:分類ID,分類名和所屬空間。</p><p>  Reply Bean</p>

77、<p>  用來(lái)保存日志評(píng)論的信息,包括:評(píng)論ID,評(píng)論者名字,評(píng)論內(nèi)容,評(píng)論數(shù),評(píng)論時(shí)間,評(píng)論IP和評(píng)論所屬日志。</p><p>  Comment Bean</p><p>  用來(lái)保存留言的信息,包括:留言ID,留言者名字,留言內(nèi)容,留言數(shù),留言時(shí)間,留言IP和留言所屬空間。</p><p><b>  Link Bean</b

78、></p><p>  用來(lái)保存超鏈接的信息,包括:超鏈接ID,超鏈接標(biāo)題,超鏈接內(nèi)容和超鏈接所屬空間。</p><p><b>  通用類的設(shè)計(jì)</b></p><p>  在博客系統(tǒng)中還設(shè)計(jì)了通用類,這個(gè)通用類主要是針對(duì)Hibernate設(shè)計(jì)的,這個(gè)類在對(duì)數(shù)據(jù)的插入,修改,刪除,更新時(shí)經(jīng)常用到,因此在這里把它封裝成一個(gè)通用,方便以后的

79、調(diào)用。HibernateSessionFactoryUtil代碼如下所示:</p><p>  數(shù)據(jù)庫(kù)與Hibernate配置</p><p>  本系統(tǒng)使用現(xiàn)今流行的Java Web框架Hibernate來(lái)統(tǒng)一管理數(shù)據(jù)庫(kù),在MySQL數(shù)據(jù)庫(kù)中先建立好基本表,然后通過(guò)Hibernate與Java Bean對(duì)應(yīng)映射關(guān)系,Hibernate配置文件如下所示:</p><p&

80、gt;  Struts 2配置</p><p>  本系統(tǒng)采用經(jīng)典的MVC設(shè)計(jì)模式,由現(xiàn)今流行的Java Web框架Struts 2進(jìn)行統(tǒng)一管理,Struts 2是一個(gè)十分實(shí)用的MVC框架,Struts 2的配置文件如下所示:</p><p><b>  模塊詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)</b></p><p>  本節(jié)將詳細(xì)介紹博客系統(tǒng)各模塊的設(shè)計(jì),主要模

81、塊包括:登錄與注冊(cè)模塊,日志管理模塊,日志評(píng)論模塊,分類模塊,留言模塊。</p><p><b>  登錄與注冊(cè)模塊</b></p><p><b>  1.注冊(cè)</b></p><p>  用戶通過(guò)填寫(xiě)注冊(cè)頁(yè)面的的要求完成注冊(cè),注冊(cè)時(shí)需要符合系統(tǒng)對(duì)用戶注冊(cè)的要求,如用戶名不能重復(fù),輸入正確的驗(yàn)證碼等。注冊(cè)成功的同時(shí),并開(kāi)

82、通個(gè)人博客,操作流程為將用戶所填寫(xiě)的注冊(cè)信息插入到用戶表,并根據(jù)用戶ID和博客系統(tǒng)的缺省參數(shù)生成一條記錄,插入到空間信息表中。注冊(cè)頁(yè)面如圖4-2所示:</p><p><b>  圖4-2 注冊(cè)頁(yè)面</b></p><p><b>  2.登錄</b></p><p>  登錄功能的操作流程為根據(jù)用戶所填寫(xiě)的登錄信息去用戶

83、表里查詢,如果有該記錄,則說(shuō)明登錄成功,然后根據(jù)用戶ID從空間信息表里取出信息,最后初始化用戶信息和用戶空間信息,登錄成功就跳轉(zhuǎn)到用戶博客首頁(yè)。登錄代碼如下所示:</p><p><b>  日志管理模塊</b></p><p>  日志管理模塊主要包括的功能有對(duì)日志的添加,修改,刪除,查詢,詳細(xì)情況如下:</p><p><b> 

84、 1.添加日志</b></p><p>  在添加日志時(shí)首先選擇日志所屬的分類,選擇分類后再向日志表中插入日志內(nèi)容,日志內(nèi)容包括日志標(biāo)題,內(nèi)容,添加內(nèi)容部分采用現(xiàn)今流行的HTML編輯器ckeditor。如果失敗則退出,然后更新日志發(fā)表時(shí)間,IP以及設(shè)置點(diǎn)擊數(shù)(Hit)為0,具體流程如圖4-3所示:</p><p>  圖4-3 添加日志流程圖</p><p&

85、gt;  添加日志代碼如下(省略getter(),setter()方法)所示:</p><p>  添加日志頁(yè)面如下圖4-4所示:</p><p>  圖4-4 添加日志頁(yè)面</p><p><b>  2.修改日志</b></p><p>  修改日志首先要根據(jù)日志ID查詢到所要修改的日志,然后從數(shù)據(jù)庫(kù)中讀取日志的相關(guān)

86、信息到修改日志頁(yè)面,最后通過(guò)日志ID更新操作插入數(shù)據(jù)庫(kù),修改日志頁(yè)面與添加日志頁(yè)面基本相同。具體流程如下圖4-5所示:</p><p>  圖4-5 修改日志流程圖</p><p>  修改日志代碼如下(省略getter(),setter()方法)所示:</p><p><b>  3.刪除日志</b></p><p>

87、  刪除日志首先要根據(jù)日志ID查詢所要?jiǎng)h除的日志,然后執(zhí)行刪除指令對(duì)日志進(jìn)行刪除,刪除指令將刪除日志的所有信息。具體流程如下圖4-6所示:</p><p>  圖4-6 刪除日志流程圖</p><p>  刪除日志代碼如下(省略getter(),setter()方法)所示:</p><p><b>  日志評(píng)論模塊</b></p>

88、<p>  日志評(píng)論也就是對(duì)博主發(fā)表的日志進(jìn)行評(píng)論,評(píng)論者可以是任何人,評(píng)論者進(jìn)行評(píng)論時(shí)就會(huì)在數(shù)據(jù)庫(kù)評(píng)論表中留下一條記錄,評(píng)論者評(píng)論時(shí)需要留下用戶名,評(píng)論后系統(tǒng)會(huì)自動(dòng)記錄評(píng)論的時(shí)間和IP地址。添加評(píng)論代碼如下(省略getter(),setter()方法)所示:</p><p>  日志評(píng)論頁(yè)面如下圖4-7所示:</p><p>  圖4-7 日志評(píng)論頁(yè)面</p>

89、<p><b>  分類模塊</b></p><p>  分類模塊是對(duì)日志的分類,日志分成不同的類別可以方便的進(jìn)行查詢。博主可以在寫(xiě)日志前先設(shè)定分類,分類管理主要包括有添加,修改,刪除。下面以添加分類代碼為例,添加分類代碼如下(省略getter(),setter()方法)所示:</p><p>  分類管理頁(yè)面如圖4-8和圖4-9所示:</p>

90、<p>  圖4-8 分類管理頁(yè)面</p><p>  圖4-9 分類管理頁(yè)面</p><p><b>  留言模塊</b></p><p>  留言模塊記錄的是瀏覽者對(duì)博主的留言,瀏覽著留言時(shí)需要留下用戶名,系統(tǒng)會(huì)自動(dòng)記錄下留言時(shí)間和留言IP地址。留言管理主要包括有對(duì)留言的添加,刪除,查詢,下面以添加留言代碼為例,添加留言代碼如下

91、(省略getter(),setter()方法)所示:</p><p>  添加留言頁(yè)面如圖4-10所示:</p><p>  圖4-10 添加留言頁(yè)面</p><p><b>  系統(tǒng)配置</b></p><p>  本系統(tǒng)主要采用JSP技術(shù),因此操作系統(tǒng)中必須安裝有Java運(yùn)行環(huán)境JDK。此外,系統(tǒng)服務(wù)器采用Apach

92、e Tomcat 6.0,端口為8080,數(shù)據(jù)庫(kù)采用MySQL Server 5.1,端口3306。</p><p>  所以分別安裝好Apache Tomcat 6.0和MySQL Server 5.1,在MySQL數(shù)據(jù)庫(kù)系統(tǒng)中建立好博客系統(tǒng)需要的基本表,索引等。然后將MyEclipse編譯生成的WAR文件部署到Tomcat的webapps目錄下。</p><p>  這樣就完成了整個(gè)博

93、客系統(tǒng)的部署,本地機(jī)器可以通過(guò)在Web瀏覽器中輸入http://localhost:8080/Blog進(jìn)行查看。</p><p>  系統(tǒng)首頁(yè)如下圖4-11所示:</p><p>  圖4-11 系統(tǒng)首頁(yè)</p><p><b>  結(jié) 論</b></p><p>  目前為止,論文的撰寫(xiě)已告一段落,這幾個(gè)月來(lái)我把主要的

94、時(shí)間都放在系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)以及論文的撰寫(xiě)上,雖然系統(tǒng)開(kāi)發(fā)過(guò)程很艱辛,開(kāi)發(fā)中也遇到了大大小小很多問(wèn)題,但經(jīng)過(guò)我和指導(dǎo)老師的努力都一一克服了?,F(xiàn)在,系統(tǒng)和論文都已完成,我心中也倍感充實(shí),覺(jué)得這幾個(gè)月的努力沒(méi)有白費(fèi)。</p><p>  經(jīng)過(guò)這幾個(gè)月來(lái)的深入實(shí)踐,我從當(dāng)初對(duì)Web系統(tǒng)的一知半解到現(xiàn)在已基本掌握開(kāi)發(fā)流程的關(guān)鍵。通過(guò)對(duì)軟件工程的學(xué)習(xí),我已深深了解了UML建模和需求分析對(duì)軟件初期設(shè)計(jì)時(shí)的重要性。在系統(tǒng)的整個(gè)開(kāi)

95、發(fā)過(guò)程中,我也領(lǐng)悟到了程序設(shè)計(jì)語(yǔ)言的基礎(chǔ)對(duì)系統(tǒng)實(shí)現(xiàn)的重要性,指導(dǎo)老師在開(kāi)發(fā)過(guò)程中反復(fù)強(qiáng)調(diào)了語(yǔ)言基礎(chǔ)的關(guān)鍵性。在開(kāi)發(fā)的前期由于對(duì)基礎(chǔ)知識(shí)的忽視,我也犯了很多本不應(yīng)該犯的錯(cuò)誤,因此在這里做個(gè)總結(jié),不論做什么軟件或系統(tǒng),基礎(chǔ)很重要,基本功的扎實(shí)與否往往是成敗的關(guān)鍵。</p><p>  以下主要總結(jié)一下系統(tǒng)的主要特點(diǎn)以及系統(tǒng)的不足。</p><p><b>  系統(tǒng)的特點(diǎn)</b&

96、gt;</p><p>  本系統(tǒng)完成了當(dāng)今主流博客的大部分功能,包括注冊(cè),登錄,發(fā)表日志,發(fā)表評(píng)論等。從系統(tǒng)設(shè)計(jì)方面來(lái)看,本系統(tǒng)采用流行的MVC設(shè)計(jì)模式,便于管理與擴(kuò)展。系統(tǒng)采用JSP技術(shù),真正做到了安全,穩(wěn)定,高效的特點(diǎn)。界面設(shè)計(jì)方面添加了JavaScript技術(shù),做到了友好的用戶體驗(yàn)。綜上所述,本系統(tǒng)具有功能豐富、架構(gòu)穩(wěn)定、響應(yīng)快速、安全可靠和很好的用戶體驗(yàn)等特點(diǎn)。</p><p>

97、<b>  系統(tǒng)的不足</b></p><p>  系統(tǒng)有很多不足的地方。對(duì)于數(shù)據(jù)表而言,對(duì)常檢索的字段沒(méi)有添加有效的索引,不然速度還可以再提升。對(duì)于面臨大的訪問(wèn)量時(shí),需要對(duì)從軟件和硬件方面進(jìn)行擴(kuò)展時(shí),比如,將數(shù)據(jù)庫(kù)進(jìn)行讀寫(xiě)分離,建立多臺(tái)并行的讀取數(shù)據(jù)庫(kù)服務(wù)器時(shí),目前程序不能自動(dòng)對(duì)這些數(shù)據(jù)庫(kù)進(jìn)行分配,需要修改程序才能達(dá)到。在功能設(shè)計(jì)上,本系統(tǒng)只是完成了現(xiàn)今博客系統(tǒng)的基本功能,很多如好友管理,

98、圖片上傳等功能都沒(méi)有,不能吸引更多的用戶,這也是本系統(tǒng)的不足之處。在界面設(shè)計(jì)方面,本系統(tǒng)只是完成了基本的用戶交互,對(duì)于更好更漂亮的界面設(shè)計(jì)則無(wú)法達(dá)到。</p><p><b>  展望</b></p><p>  現(xiàn)在的成功就是以后的經(jīng)驗(yàn),現(xiàn)在的不足就是今后要努力的目標(biāo)。對(duì)于計(jì)算機(jī)這個(gè)行業(yè)來(lái)說(shuō),技術(shù)的更新日新月異,為了跟上時(shí)代的步伐,要活到老,學(xué)到老,讓我自己在每一天

99、都在進(jìn)步。作為技術(shù)人員的我,更是要堅(jiān)定不移的堅(jiān)守這執(zhí)著的學(xué)習(xí)態(tài)度,為追求自己的理想而奮斗。</p><p><b>  參考文獻(xiàn)</b></p><p>  耿祥義,張躍平編著.Java大學(xué)實(shí)用教程[M].北京:電子工業(yè)出版社.2008.5.</p><p>  劉京華.Java Web整合開(kāi)發(fā)王者歸來(lái)(JSP+Servlet+Struts+H

100、ibernate+ Spring)[M].北京:清華大學(xué)出版社.2010.01.</p><p>  孫衛(wèi)琴.精通Struts:基于MVC的Java Web的設(shè)計(jì)與開(kāi)發(fā)[M].北京:電子工業(yè)出版社,2004.8.</p><p>  伯格斯坦(Bergsten.H.)著;汪青青,朱劍平等譯.JSP設(shè)計(jì)[M].北京:清華大學(xué)出版社.2004.10.</p><p> 

101、 李剛著.輕量級(jí)J2EE 企業(yè)應(yīng)用實(shí)戰(zhàn): Struts+Spring+Hibernate整合開(kāi)發(fā)[M].北京:電子工業(yè)出版社.2007.04.</p><p>  唐漢明等編著.深入淺出MySQL數(shù)據(jù)庫(kù)開(kāi)發(fā)、優(yōu)化與管理維護(hù)[M].北京:人民郵電出版社.2008.04.</p><p><b>  致 謝</b></p><p>  經(jīng)過(guò)這段時(shí)間

102、的忙碌,畢業(yè)設(shè)計(jì)終于完成,能順利的完成這次畢業(yè)設(shè)計(jì)與指導(dǎo)老師和同學(xué)們的幫助和支持是密不可分的。</p><p>  首先得感謝我最尊敬的xx老師。為了讓我的畢業(yè)設(shè)計(jì)能按時(shí)完成,幫助我們把握進(jìn)度,你放棄了自己的休息時(shí)間,為我指導(dǎo)論文中的一字一句。你那嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度,淵博的知識(shí)和對(duì)學(xué)生的嚴(yán)格要求,都給我留下了深刻的印象。在此,對(duì)你表示衷心的感謝,謝謝您。</p><p>  此外,我還要感謝我

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論