基于java_web的郵件管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-畢業(yè)設(shè)計(jì)_第1頁
已閱讀1頁,還剩45頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  畢 業(yè) 設(shè) 計(jì)</b></p><p>  2014 年 11 月 26 日</p><p> 中文題目基于Java web的郵件管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 英文題目Based on Java web email management system design and implementation&l

2、t;/p><p>  基于Java web的郵件管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p>  【摘要】電子郵件(E-mail)是Internet上使用廣泛的服務(wù)其中之一,傳統(tǒng)的Email應(yīng)用模式基于C/S結(jié)構(gòu),用戶以使用客戶端的郵件收發(fā)工具(如Outlook、Fox mail等)與提供郵件服務(wù)的服務(wù)器(如163.net、263.net、371.net)進(jìn)行通信,用戶需要進(jìn)行一些必要的設(shè)置在使用客戶

3、端郵件工具之前,例如,需要對郵件服務(wù)器的主機(jī)地址和通信端口等的指定,這些工作對剛開始上網(wǎng)的用戶會有一定的困難,如果把E-mail和Web結(jié)合在一起,通過Web編程和適當(dāng)?shù)南到y(tǒng)設(shè)置,那么用戶僅僅以訪問Web的方式就可以得到和使用完整的郵件服務(wù),這樣使用戶上網(wǎng)更加方便,這種系統(tǒng)稱為Web Mail。Web Mail是目前Internet上最受歡迎的服務(wù)之一,也是很多網(wǎng)站必備功能之一,另外Web Mail同樣也適用于企業(yè)或校園網(wǎng)的應(yīng)用。 &l

4、t;/p><p>  此郵箱系統(tǒng)功能主要分為管理員管理和用戶管理兩個部分,管理員管理主要包括管理用戶信息、刪除用戶、管理后臺系統(tǒng)等;用戶管理主要包括用戶個人信息的管理、個人郵箱的管理等。該系統(tǒng)可以根據(jù)需求對功能進(jìn)行擴(kuò)展和完善。</p><p>  【關(guān)鍵詞】電子郵件,郵件服務(wù),Web編程,Web Mail,Java</p><p>  Design and implem

5、entation of the tourism website </p><p>  【Abstract】 The E-mail is one of the most popular services on Internet, traditional E-mail application mode is based on C/S structure, users use the mail of the cust

6、omer end to receive and dispatch tools (Such as Outlook, Fox mail ,etc. ) and server (such as 163 net , 263 net , 371 net ) communication offering mail service, before using the mail tool of customer end, user want , car

7、ry on some essential establishment, such as appoint mail host computer address and communication port ,etc. of serv</p><p>  This mailbox system function is divided into primarily the managing person manages

8、 to manage with the customer two big part, managing person the management includes to manage the customer information, delete the customer and manage the backstage system etc. primarily; The customer management includes

9、management etc. of the management, personal mailbox of the personal information in customer primarily. </p><p>  【Keyword】The E-mail, Mail service, Web Programming, Web Mail, java</p><p><b&g

10、t;  目 錄</b></p><p><b>  引言1</b></p><p><b>  第一章緒 論2</b></p><p>  1.1課題背景2</p><p>  1.2研究內(nèi)容2</p><p>  1.3軟件的開發(fā)方法3<

11、;/p><p>  1.4系統(tǒng)開發(fā)環(huán)境的選取4</p><p>  第二章相關(guān)技術(shù)6</p><p>  2.1目錄結(jié)構(gòu)6</p><p>  2.2通用模塊6</p><p>  2.2.1數(shù)據(jù)庫連接池7</p><p>  2.2.2數(shù)據(jù)庫封裝7</p>&

12、lt;p>  2.3配置站點(diǎn)與數(shù)據(jù)庫連接7</p><p>  2.4主要工具詳細(xì)介紹8</p><p>  2.4.1JSP介紹8</p><p>  2.4.2與傳統(tǒng)的CGI方式相比,JSP的優(yōu)點(diǎn)8</p><p>  2.4.3技術(shù)特點(diǎn)9</p><p>  2.4.4MVC模式設(shè)計(jì)思

13、想介紹10</p><p>  2.4.5關(guān)于Tomcat的安裝和注意事項(xiàng)11</p><p>  第三章 功能規(guī)劃及現(xiàn)狀14</p><p>  3.1功能規(guī)劃的主體14</p><p>  3.2關(guān)鍵技術(shù)14</p><p>  第四章 系統(tǒng)分析15</p><p>  4

14、.1系統(tǒng)的可行性分析15</p><p>  4.2系統(tǒng)邏輯方案的提出16</p><p>  4.2.1用例圖的分析16</p><p>  4.2.2系統(tǒng)管理員功能17</p><p>  4.2.3用戶功能17</p><p>  第五章 系統(tǒng)設(shè)計(jì)19</p><p>

15、;  5.1系統(tǒng)流程圖19</p><p>  5.1.1管理員的系統(tǒng)流程圖19</p><p>  5.1.2用戶的系統(tǒng)流程圖19</p><p>  5.2系統(tǒng)模塊的功能圖20</p><p>  5.3實(shí)體之間的關(guān)系E-R圖21</p><p>  5.4數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)22</p&g

16、t;<p>  5.4.1創(chuàng)建數(shù)據(jù)表23</p><p>  5.4.2系統(tǒng)信息配置表23</p><p>  5.4.3日志表24</p><p>  5.4.4用戶表24</p><p>  5.4.5friend好友表25</p><p>  5.4.6郵件信息記錄表25&l

17、t;/p><p>  5.5數(shù)據(jù)庫的E-R圖26</p><p>  第六章 程序設(shè)計(jì)與實(shí)現(xiàn)27</p><p>  6.1管理員登錄模塊設(shè)計(jì)與實(shí)現(xiàn)27</p><p>  6.2管理員用戶管理模塊設(shè)計(jì)與實(shí)現(xiàn)28</p><p>  6.3管理員系統(tǒng)設(shè)置模塊設(shè)計(jì)與實(shí)現(xiàn)30</p><p

18、>  6.4用戶注冊模塊設(shè)計(jì)與實(shí)現(xiàn)31</p><p>  6.5用戶登錄模塊設(shè)計(jì)與實(shí)現(xiàn)32</p><p>  6.6用戶撰寫發(fā)送郵件模塊設(shè)計(jì)與實(shí)現(xiàn)33</p><p>  6.7用戶收件箱管理模塊設(shè)計(jì)與實(shí)現(xiàn)35</p><p>  6.8用戶修改個人資料管理模塊設(shè)計(jì)與實(shí)現(xiàn)36</p><p&g

19、t;  6.9服務(wù)器端的系統(tǒng)活動圖設(shè)計(jì)36</p><p><b>  結(jié)束語39</b></p><p>  第七章 致 謝40</p><p>  第八章 參考文獻(xiàn)1</p><p><b>  引言</b></p><p>  本文就基于Java web的郵件

20、管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)進(jìn)行研究。郵件管理系統(tǒng)是一個基于用戶關(guān)系的郵件收發(fā),郵件管理和用戶管理系統(tǒng)。該系統(tǒng)利用Java語言和MyEclipse編輯工具對系統(tǒng)進(jìn)行編寫。同時給出了詳細(xì)的系統(tǒng)設(shè)計(jì)過程、部分界面圖及主要功能運(yùn)行流程圖,郵件管理系統(tǒng)實(shí)現(xiàn)的功能有:用戶登錄、用戶注冊、郵件的接收,發(fā)送,刪除,對用戶信息的增加,刪除和修改,用戶可以對郵箱信息進(jìn)行管理。適用于所有的郵箱使用者,為用提供了一個良好的郵件管理途徑。</p><

21、;p>  本系統(tǒng)采用MVC模式設(shè)計(jì),實(shí)現(xiàn)了一個簡單的郵件管理系統(tǒng)。MVC模式極大地提高了系統(tǒng)的復(fù)用性、靈活性、適應(yīng)性、開發(fā)效率和可維護(hù)性,充分發(fā)揮了JSP、Servlet等J2EE組件的特點(diǎn)。此郵件管理系統(tǒng)主要是實(shí)現(xiàn)郵件的簡單發(fā)送,它有很多的優(yōu)勢,例如并不要求發(fā)送者和接受者同時存在,任何人在任何地點(diǎn)都可以發(fā)送郵件,接收者可以隨時接收郵件,它并不會受到時間和地點(diǎn)的限制。而且用戶可以對收到的郵件進(jìn)行閱讀,保存,刪除等操作,方便了用戶對

22、郵件信息進(jìn)行的管理。此次設(shè)計(jì)實(shí)現(xiàn)了簡單郵件管理系統(tǒng)的設(shè)計(jì)與開發(fā),本系統(tǒng)實(shí)現(xiàn)郵件的基本功能有,實(shí)現(xiàn)用戶登入模塊:用戶登錄后才能進(jìn)行郵件收發(fā)操作。實(shí)現(xiàn)郵件收發(fā):用戶可收取和發(fā)送郵件實(shí)現(xiàn)郵件的閱讀,刪除功能。實(shí)現(xiàn)用戶管理功能:對用戶進(jìn)行添加,刪除和修改信息。</p><p><b>  緒 論</b></p><p><b>  課題背景</b><

23、;/p><p>  電子郵件是介于書信、電話和傳真之間的電子信息傳送方式。隨著互聯(lián)網(wǎng)的進(jìn)一步發(fā)展,電子郵件已經(jīng)成為人們聯(lián)系溝通的重要途徑。電子郵件系統(tǒng)已經(jīng)發(fā)展成為了一個相當(dāng)復(fù)雜而且功能更為豐富的系統(tǒng),它可以傳送文檔、圖像、聲音、圖片、圖像等多媒體信息,甚至于數(shù)據(jù)庫或帳目報(bào)告等更加專業(yè)化的文件都可以以電子郵件的形式在網(wǎng)上分發(fā)。隨著信息技術(shù)的發(fā)展以及電子郵件系統(tǒng)功能的日益強(qiáng)大,它的應(yīng)用領(lǐng)域已得到較大的提升。網(wǎng)絡(luò)的普及使得

24、郵件管理系統(tǒng)得以廣泛的應(yīng)用。采用開放的Web郵件服務(wù)不僅為用戶省去了維護(hù)與升級客戶端軟件的麻煩,并且也能夠充分發(fā)揮系統(tǒng)軟硬件資源的作用。Web郵件服務(wù)的另一個優(yōu)勢是允許用戶,甚至是持有移動設(shè)備的用戶,可以隨時、隨地的訪問系統(tǒng)并進(jìn)行信息傳遞[1]。</p><p><b>  研究內(nèi)容</b></p><p>  隨著新技術(shù)的不斷涌現(xiàn),電子郵件產(chǎn)品越來越多,而且也越來越

25、豐富。在郵件服務(wù)器端有FTPMail服務(wù)器、Microsoft Exchange 服務(wù)器、Qmail服務(wù)器等等。這些服務(wù)器都有相應(yīng)的操作系統(tǒng)支持,而且有的又有很好的跨平臺性,像Send mail服務(wù)器它在Linux、Unix、都可用。在郵件系統(tǒng)客戶端,其中Microsoft Outlook、Netscape Mail、Fox mail是當(dāng)今電子郵件客戶端軟件的主流產(chǎn)品;另外,隨著網(wǎng)絡(luò)的普及,基于Web的應(yīng)用模式的發(fā)展與應(yīng)用,例如sina

26、、263以及眾多的企業(yè)都已推出了自己的Web郵件系統(tǒng)[2]。本課題將研究如何使用PHP、POP3、STMP、IMAP等技術(shù)實(shí)現(xiàn)B/S郵件服務(wù)器。利用JSP等實(shí)現(xiàn)其功能,功能主要有郵件的收發(fā)、存儲、刪除等等。</p><p><b>  軟件的開發(fā)方法</b></p><p>  面向?qū)ο蟮姆椒ń?jīng)由系統(tǒng)分析、設(shè)計(jì)和試驗(yàn)等幾個階段,并需要遵從軟件生命周期的規(guī)律。軟件的生命

27、周期指一個軟件從它的開發(fā)到其消亡的過程[3]。以下就是利用生命周期法開發(fā)軟件在各個階段的具體內(nèi)容:</p><p> ?。?)問題定義及其可行性論證:明確軟件開發(fā)的請求,并進(jìn)行初步的調(diào)查,通過可行性研究確定下一階段的實(shí)施??尚行苑治龅娜蝿?wù)就是確定項(xiàng)目開發(fā)的可行性和必要性。也就是說,對所提出的問題進(jìn)行分析,來決定所提出的問題是否“可行”??尚行允侵?,首先要在技術(shù)上可行,現(xiàn)有技術(shù)能否解決所提出的問題;其次是在經(jīng)濟(jì)上可

28、行,用戶能否支付實(shí)施項(xiàng)目所需要的費(fèi)用,項(xiàng)目建成后能否取得預(yù)期的經(jīng)濟(jì)效益;最后進(jìn)行操作上和法律上的可行性研究。綜合這些方面,最終決定是否實(shí)施該項(xiàng)目。</p><p>  (2)用戶需求分析階段:在這個階段中,就是了解用戶的需求,準(zhǔn)確的確定用戶需要的功能,明確為了實(shí)現(xiàn)這些功能,需要做哪些處理,需要處理哪些數(shù)據(jù);需要存儲什么數(shù)據(jù)文件;得到什么信息。并且需要找出為了實(shí)現(xiàn)功能所需要的約束條件,例如,成本約束和時間約束。另一

29、個重要任務(wù)是要規(guī)定系統(tǒng)的生效準(zhǔn)則,規(guī)定在目標(biāo)系統(tǒng)建成后驗(yàn)收目標(biāo)系統(tǒng)的一些原則以及具體的驗(yàn)收方法等。具體工作主要是詳細(xì)調(diào)查,其具體的調(diào)查內(nèi)容有分析當(dāng)前各大網(wǎng)站上的郵箱的功能和實(shí)現(xiàn)方法,了解使用者在使用過程中存在的問題以及希望使用到的功能。</p><p> ?。?)系統(tǒng)設(shè)計(jì)階段:此階段的任務(wù)是在系統(tǒng)分析的基礎(chǔ)上,按照邏輯模型的要求,合理地進(jìn)行系統(tǒng)的總體設(shè)計(jì)和具體的物理設(shè)計(jì),為下一階段的系統(tǒng)實(shí)施提供必要的技術(shù)資料。具

30、體分為:詳細(xì)設(shè)計(jì)階段和概要設(shè)計(jì)階段。</p><p>  詳細(xì)設(shè)計(jì)階段:在這個階段中的任務(wù)是進(jìn)行系統(tǒng)所需要的數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)和數(shù)據(jù)庫的物理設(shè)計(jì)。輸入輸出設(shè)計(jì)、編寫程序模塊設(shè)計(jì)說明書。</p><p>  概要設(shè)計(jì)階段:這個階段中的主要任務(wù)是得到一個能夠?qū)崿F(xiàn)用戶需求的理想的系統(tǒng)結(jié)構(gòu)。所謂理想的結(jié)構(gòu)指的是:能夠?qū)崿F(xiàn)需求階段中規(guī)定的功能;系統(tǒng)容易設(shè)計(jì)和實(shí)現(xiàn);系統(tǒng)易于維護(hù)。設(shè)計(jì)內(nèi)容包括劃分子系統(tǒng)、設(shè)計(jì)

31、規(guī)范制定、數(shù)據(jù)流程圖設(shè)計(jì)、功能結(jié)構(gòu)圖設(shè)計(jì)、系統(tǒng)物理配置方案設(shè)計(jì)。</p><p>  系統(tǒng)設(shè)計(jì)工作結(jié)束后,要提交系統(tǒng)設(shè)計(jì)報(bào)告。若系統(tǒng)設(shè)計(jì)被審查批準(zhǔn),整個系統(tǒng)開發(fā)工作便進(jìn)入系統(tǒng)實(shí)施階段[4]。</p><p>  (4)系統(tǒng)實(shí)施階段:這是軟件系統(tǒng)的實(shí)現(xiàn)階段,要進(jìn)行模塊編碼和模塊測試。模塊測試又稱為單元測試。模塊編碼要嚴(yán)格按詳細(xì)設(shè)計(jì)階段開發(fā)的模塊邏輯進(jìn)行。模塊程序設(shè)計(jì)完成之后,應(yīng)經(jīng)過嚴(yán)格的測試

32、。程序測試應(yīng)該采用科學(xué)的方法。主要是黑盒法和白盒法進(jìn)行測試,從而盡可能多地發(fā)現(xiàn)模塊中錯誤,并加以改正。把經(jīng)過徹底測試的模塊組裝起來形成需要的應(yīng)用系統(tǒng)。再進(jìn)行集成測試,采用的是黑盒測試方法,集成的方法可采用自頂向下集成或自底向上集成,或者二者結(jié)合的方法。</p><p>  (5)維護(hù)階段:主要包括改正性維護(hù)、適應(yīng)性維護(hù)和完善性維護(hù):改正性維護(hù)指的是修改程序中所遺漏的錯誤,確保用戶程序能正常運(yùn)行;完善性維護(hù)指的是增

33、加了程序的功能,來滿足用戶的進(jìn)一步需求;適應(yīng)性維護(hù)指的是在用戶改變硬件或軟件支持環(huán)境時候,滿足程序的需求來修改工作。維護(hù)階段是一個非常重要的階段,維護(hù)工作的好壞直接影響到用戶的滿意程度。</p><p><b>  系統(tǒng)開發(fā)環(huán)境的選取</b></p><p><b> ?。?)硬件環(huán)境:</b></p><p><b

34、>  Cpu :P4 </b></p><p><b>  內(nèi)存:512M</b></p><p>  具備 Internet 上網(wǎng)條件。</p><p><b>  (2)軟件環(huán)境:</b></p><p>  操作系統(tǒng):Win7 Professional </p>

35、<p>  JbuilderX、Mysql、</p><p>  JDKI.4.2、 DREAMWEAVER 、操作系統(tǒng)啟用TCP/IP。</p><p>  (3)簡介Jbuilder</p><p>  Borland JBuilder是全球第一的跨平臺Java開發(fā)環(huán)境,可建構(gòu)符合業(yè)界標(biāo)準(zhǔn)的Java應(yīng)用系統(tǒng),開發(fā)EJB、Web、XML以及數(shù)據(jù)庫等各

36、類應(yīng)用程序。經(jīng)由JBuider雙向的、可視化的設(shè)計(jì)工具,您可以快速開發(fā)各種J2EE應(yīng)用程序,并將其部署到多種應(yīng)用程序服務(wù)器上,包括BEA WebLogic、IBM WebSphere、Sun、One、Oracle9i Application Server以及集成于JBuilder的Borland Enterprise Server。</p><p> ?。?)簡介MY SQL</p><p&g

37、t;  MY SQL數(shù)據(jù)庫,它的缺點(diǎn)是,缺乏一個全功能數(shù)據(jù)庫的大多數(shù)主要特征,但是它又有比類似Xbase記錄存儲引擎更多的特征。它像企業(yè)級RDBMS那樣需要一個積極的服務(wù)者守護(hù)程序,但是不能象他們那樣消費(fèi)資源。其中MY SQL數(shù)據(jù)庫的查詢語言允許復(fù)雜的連接(join)查詢,但它要求所有的參考完整必須有強(qiáng)制保證。 </p><p>  MYSQL在Linux世界里找到一個位置-提供簡潔和速度,同時仍然提供足夠的功能

38、。它具備的查詢功能和廣泛的客戶庫被數(shù)據(jù)程序員廣泛運(yùn)用,數(shù)據(jù)庫管理員會覺得系統(tǒng)缺乏主要數(shù)據(jù)庫功能,他們會發(fā)覺它對簡單數(shù)據(jù)庫是有價(jià)值的[5]。</p><p><b>  相關(guān)技術(shù)</b></p><p>  系統(tǒng)環(huán)境的搭建,最基礎(chǔ)的就是從目錄的建立開始,建立系統(tǒng)的基礎(chǔ)應(yīng)用模塊和站點(diǎn)配置環(huán)境,并進(jìn)行數(shù)據(jù)庫的正常連接。</p><p><b&g

39、t;  目錄結(jié)構(gòu)</b></p><p>  在程序設(shè)計(jì)和開發(fā)之前要設(shè)計(jì)系統(tǒng)的目錄結(jié)構(gòu),一般這個結(jié)構(gòu)對任何得B/S系統(tǒng)都是通用的,本系統(tǒng)的目錄結(jié)構(gòu)如圖2-1所示。</p><p><b>  圖2-1 目錄結(jié)構(gòu)</b></p><p>  此目錄結(jié)構(gòu)中,mail代表本站的根目錄,它包含四個子目錄:database的功能是用于存放數(shù)據(jù)

40、庫備份文件,docs用于存放系統(tǒng)的文檔,jsp和WEB-IN用于存放系統(tǒng)的JSP等的源文件和系統(tǒng)所使用的類包。jsp的根目錄下是一些jsp的源文件,下面所包含四個子目錄:face用于存放用戶自定義的頭像,INC用于存放一些公用的jsp頁面,js用于存放腳本文件,pic用于存放圖片文件。WEB-INF包含兩個子目錄:classes用于存放類文件,lib用于存放類包文件,同時該目錄下還包括站點(diǎn)的配置文件web.xml。</p>

41、<p><b>  通用模塊</b></p><p>  該系統(tǒng)采用數(shù)據(jù)庫連接池對數(shù)據(jù)庫進(jìn)行的統(tǒng)一管理,同時在數(shù)據(jù)庫操作上進(jìn)行了封裝,使得程序開發(fā)始于數(shù)據(jù)庫的交互更加方便。</p><p><b>  數(shù)據(jù)庫連接池</b></p><p>  在實(shí)現(xiàn)某一個功能時,首先要連接數(shù)據(jù)庫。如果在每一次需要進(jìn)行數(shù)據(jù)庫操作

42、前都來加載驅(qū)動、創(chuàng)建連接,那么在連接的入口參數(shù)處理上便不好管理以及維護(hù)。一旦系統(tǒng)移植,數(shù)據(jù)庫參數(shù)改變,將需要重新修改所有的連接代碼,重新編譯。</p><p>  首先在文件db.properties配置數(shù)據(jù)庫連接參數(shù),這些參數(shù)包括數(shù)據(jù)庫的驅(qū)動、連接通信、用戶名、密碼。這樣,在數(shù)據(jù)庫移植或系統(tǒng)環(huán)境改變時,只需修改這一個地方就可以了,十分方便。</p><p>  drivers=com.m

43、icrosoft.jdbc.Mysql.MysqlDriver</p><p>  logfile=C:\\log.txt</p><p>  mysql.url=jdbc:microsoft:Mysql://Neu029:1433;DatabaseName=bbs</p><p>  mysql.maxconn=1000</p><p> 

44、 mysql.user=mail</p><p>  mysql.password=mail</p><p>  此系統(tǒng)采用了類DBConnectionManager來統(tǒng)一管理數(shù)據(jù)庫的連接。具體代碼參見DBConnectionManager.java文件。</p><p><b>  數(shù)據(jù)庫封裝</b></p><p>

45、  數(shù)據(jù)庫已經(jīng)連接,在每一次需要進(jìn)行數(shù)據(jù)庫的某種操作時,調(diào)用JDBC的函數(shù)就可以了,但是直接調(diào)用JDBC函數(shù)將使代碼的編寫工作十分浪費(fèi),該系統(tǒng)封裝了數(shù)據(jù)庫操作的類DBConnect,具體代碼參見DBConnect.java。</p><p>  該類封裝了數(shù)據(jù)庫操作的基本函數(shù),用于作為JavaBean的父類,便于統(tǒng)一管理。該類的一個重要作用是從連接池里取得一個連接,在使用結(jié)束時關(guān)閉連接。統(tǒng)一處理了很多額外的工作和

46、異常的拋出。</p><p>  配置站點(diǎn)與數(shù)據(jù)庫連接</p><p> ?。?)安裝JDK1.4.0</p><p>  下載JDK1.4.0版本安裝程序,連續(xù)單擊“下一步”按鈕,安裝過程中均采用默認(rèn)選擇,直至安裝結(jié)束。安裝結(jié)束后,在桌面“我的電腦”圖表上右擊,在談出的快捷菜單中選擇“屬性”命令,彈出“系統(tǒng)特性”對話框,在“高級”選項(xiàng)卡中單擊“環(huán)境變量”按鈕,在彈

47、出的對話框中新建環(huán)境變量JAVA_HOME,值為C:\j2sdk1.4.0。</p><p> ?。?)安裝Tomcat 5.0</p><p>  連續(xù)單擊“下一步”按鈕,直至安裝結(jié)束,在選擇安裝路徑時推薦安裝在根目錄,如:C:\Tomcat 5.0。 </p><p>  設(shè)置環(huán)境變量:在“我的電腦”屬性中設(shè)置環(huán)境變兩位TOMCAT_HOME=C:\Tomcat

48、。</p><p>  建立站點(diǎn):將整個文件目錄mail復(fù)制到Tomcat 5.0下的webapps文件夾下。</p><p><b> ?。?)訪問系統(tǒng)</b></p><p>  啟動Mysql,Tomcat,輸入地址:</p><p>  http://localhost:[8080]/mail/jsp/login

49、.jsp即可訪問,用戶admin,密碼初始化為test。</p><p>  至此,軟件環(huán)境安裝完成。</p><p><b>  主要工具詳細(xì)介紹</b></p><p><b>  JSP介紹</b></p><p>  JSP(Java Server Pages)是由Sun Microsyst

50、ems公司倡導(dǎo)、許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn),其網(wǎng)址為http://www.javasoft.com/products/jsp。在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm *.html)中加入Java程序片斷(Scriptlet)和JSP標(biāo)記(tag),就構(gòu)成了JSP網(wǎng)頁(*.jsp)。Web服務(wù)器在遇到訪問JSP網(wǎng)頁的請求時,首先執(zhí)行其中的程序片段,然后將執(zhí)行結(jié)果以HTML格式返回給客戶。程序片段可以操作數(shù)據(jù)庫、重新定向網(wǎng)頁以

51、及發(fā)送Email等等,這就是建立動態(tài)網(wǎng)站所需要的功能。所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果,對客戶瀏覽器的要求最低,可以實(shí)現(xiàn)無Plugin,無ActiveX,無Java Applet,甚至無Frame。</p><p>  JSP提供了一種簡單快速的建立基于動態(tài)內(nèi)容顯示的站點(diǎn)的技術(shù)。在JSP文件中可以包含HTML標(biāo)記、JSP語法、Servlet標(biāo)記和NCSA標(biāo)記,使得HTML的編碼從W

52、eb頁面的業(yè)務(wù)邏輯中有效地分離出來[6]。</p><p>  與傳統(tǒng)的CGI方式相比,JSP的優(yōu)點(diǎn)</p><p> ?。?)后臺的實(shí)現(xiàn)是基于Java Component 的邏輯,它具有跨平臺的特點(diǎn)。</p><p> ?。?)將應(yīng)用邏輯與頁面表現(xiàn)分離,最大程度服用應(yīng)用邏輯能夠,從而提高開發(fā)效率。</p><p> ?。?)運(yùn)行比CGI方式

53、高,尤其是對于數(shù)據(jù)庫訪問,提供了連接池緩沖機(jī)制,使運(yùn)行所需資源最小。</p><p>  (4)安全,由于后臺是完全基于Java技術(shù)的,安全性由Java的安全機(jī)制予以保障。</p><p>  (5)由于與ASP很相似,不需要太多的編程知識就可以動手編寫JSP。</p><p> ?。?)內(nèi)置支持XML,使用XML從而使頁面具有更強(qiáng)的表現(xiàn)力和減少編程工作量。<

54、/p><p><b>  技術(shù)特點(diǎn)</b></p><p> ?。?)將內(nèi)容的生成和顯示進(jìn)行分離。使用JSP技術(shù),Web頁面開發(fā)人員可以使用HTML或者XML標(biāo)識來設(shè)計(jì)和格式化最終頁面。使用JSP標(biāo)識或者小腳本來生成頁面上的動態(tài)內(nèi)容。生成內(nèi)容的邏輯被封裝在標(biāo)識和JavaBeans組件中,并且捆綁在小腳本中,所有的腳本在服務(wù)器端運(yùn)行。如果核心邏輯被封裝在標(biāo)識和Beans中,

55、那么其他人,如Web管理人員和頁面設(shè)計(jì)者,能夠編程和使用JSP頁面,而不影響內(nèi)容的生成。</p><p>  在服務(wù)器端,JSP引擎解釋JSP標(biāo)識和小腳本,生成所請求的內(nèi)容(例如,通過訪問JavaBeans組件,使用JDBCTM技術(shù)訪問數(shù)據(jù)庫,或者包含文件),并且將結(jié)果以HTML(或者XML)頁面的形式發(fā)送回瀏覽器。這有助于作者保護(hù)自己的代碼,而又保證任何基于HTML的Web瀏覽器的完全可用性[7]。</p

56、><p> ?。?)強(qiáng)調(diào)可重用的組件。絕大多數(shù)JSP頁面依賴于可重用的,跨平臺的組件(JavaBeans或者Enterprise JavaBeansTM組件)來執(zhí)行應(yīng)用程序所要求的更為復(fù)雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,或者使得這些組件為更多的使用者或者客戶團(tuán)體所使用?;诮M件的方法加速了總體開發(fā)過程,并且使得各種組織在他們現(xiàn)有的技術(shù)和優(yōu)化結(jié)果的開發(fā)努力中得到平衡。</p><p

57、> ?。?)采用標(biāo)識簡化頁面開發(fā)。Web頁面開發(fā)人員不會都是很熟悉腳本語言的程序員。JavaServer Page 技術(shù)封裝了許多功能,這些功能是在易用的、與JSP相關(guān)的XML標(biāo)識中進(jìn)行動態(tài)內(nèi)容生成 需要的。標(biāo)準(zhǔn)的JSP標(biāo)識能夠訪問和實(shí)例化JavaBeans組件,設(shè)置或者檢索組件屬性,下載Applet,以及執(zhí)行用其他方法更難于編碼和耗時的功能。通過開發(fā)定制化標(biāo)準(zhǔn)庫,JSP技術(shù)好似可以擴(kuò)展的。今后,第三方開發(fā)人員和其他人員可以為常用

58、功能創(chuàng)建自己的標(biāo)識庫。這使得Web頁面開發(fā)人員能夠使用熟悉的工具和如同標(biāo)識一樣的執(zhí)行特定功能的構(gòu)件來工作。</p><p>  JSP技術(shù)很容易整合到多種應(yīng)用體系結(jié)構(gòu)中,以利用現(xiàn)存的工具和技巧,并且擴(kuò)展到能夠支持企業(yè)級的分布式應(yīng)用。作為采用Java技術(shù)家族的一部分,以及Java 2(企業(yè)版體系結(jié)構(gòu))的一個組成部分,JSP技術(shù)能夠支持高度復(fù)雜的基于Web的應(yīng)用。</p><p>  由于JS

59、P頁面的內(nèi)置腳本語言是基于Java編程語言的,而且所有的JSP頁面都被編譯成Java Servlet,JSP頁面就具有Java技術(shù)的所有好處,包括健壯的存儲管理和安全性。</p><p>  作為Java平臺的一部分,JSP擁有Java編程語言“一次編寫,各處運(yùn)行”的特點(diǎn)。隨著越來越多的供應(yīng)商將JSP支持添加到他們的產(chǎn)品中,你可以使用自己所選擇的服務(wù)器和工具,更改工具或服務(wù)器并不影響當(dāng)前的應(yīng)用。</p>

60、;<p>  MVC模式設(shè)計(jì)思想介紹</p><p>  MVC英文即Model-View-Controller,即把一個應(yīng)用的輸入、處理、輸出流程按照Model、View、Controller的方式進(jìn)行分離,這樣一個應(yīng)用被分成三個層——模型層、視圖層、控制層。 視圖(View)代表用戶交互界面,對于Web應(yīng)用來說,可以概括為HTML界面,但有可能為XHTML、XML和Applet。隨著應(yīng)用的復(fù)雜性

61、和規(guī)模性,界面的處理也變得具有挑戰(zhàn)性。一個應(yīng)用可能有很多不同的視圖,MVC設(shè)計(jì)模式對于視圖的處理僅限于視圖上數(shù)據(jù)的采集和處理,以及用戶的請求,而不包括在視圖上的業(yè)務(wù)流程的處理。業(yè)務(wù)流程的處理交予模型(Model)處理。比如一個訂單的視圖只接受來自模型的數(shù)據(jù)并顯示給用戶,以及將用戶界面的輸入數(shù)據(jù)和請求傳遞給控制和模型。 模型(Model):就是業(yè)務(wù)流程/狀態(tài)的處理以及業(yè)務(wù)規(guī)則的制定。業(yè)務(wù)流程的處理過程對其它層來說是黑箱操作,模型接受視圖請

62、求的數(shù)據(jù),并返回最終的處理結(jié)果。業(yè)務(wù)模型的設(shè)計(jì)可以說是MVC最主要的核心。目前流行的EJB模型就是一個典型的應(yīng)用例子,它從應(yīng)用技術(shù)實(shí)現(xiàn)的角度對模型做了進(jìn)一步的劃分,以便充分利用現(xiàn)有的組件,但它不能作為應(yīng)用設(shè)計(jì)模型的框</p><p>  如圖2-2 MVC組件類型的關(guān)系和功能</p><p>  關(guān)于Tomcat的安裝和注意事項(xiàng)</p><p> ?。?)通過安裝J

63、Bulider9來安裝Tomcat</p><p>  直接安裝JBulider9,安裝過程中會給出JVM(Java虛擬機(jī))的安裝路徑,一般為JBulider9\jdk1.4。</p><p>  再安裝Tomcat,安裝過程中會詢問系統(tǒng)中已有JVM的安裝路徑,安裝程序?qū)詣佣ㄎ籎VM的位置。</p><p>  最好重新啟動一遍計(jì)算機(jī)。</p>&

64、lt;p>  不必配置諸如Classpath、path、Java Home等系統(tǒng)環(huán)境變量。</p><p>  正常啟動Tomcat即可。</p><p> ?。?)直接安裝Tomcat</p><p>  安裝JDK1.4,安裝完畢后,按程序要求重新啟動計(jì)算機(jī)。</p><p>  安裝Tomcat,安裝過程中會詢問系統(tǒng)中已有JVM的

65、安裝路徑,安裝程序?qū)詣佣ㄎ籎VM的位置。</p><p>  需要將JDK1.4安裝路徑下的lib文件夾中的tools.jar文件拷貝到TomCat5.0\common\lib文件下,并且只有在Tomcat關(guān)閉條件下,更新才有效。</p><p><b>  重新啟動計(jì)算機(jī)。</b></p><p>  不必配置諸如Class path、p

66、ath、Java Home等系統(tǒng)環(huán)境變量。</p><p>  正常啟動Tomcat即可。</p><p><b>  (3)注意事項(xiàng) </b></p><p>  Tomcat對文件名(包括路徑和后綴)的大小寫是敏感的。</p><p>  Tomcat的默認(rèn)網(wǎng)站根路徑為TomCat5.0\Webapps\Root&l

67、t;/p><p>  在編寫jsp文件時,應(yīng)特別注意其文件命名(包括存放路徑)時最好不要大小寫混用,應(yīng)統(tǒng)一為小寫,養(yǎng)成良好編程習(xí)慣。</p><p> ?。?)如何獲得Tomcat的錯誤提示信息</p><p>  Tomcat運(yùn)行時,會在任務(wù)欄右下角中出現(xiàn)類似MSMYSQL的圖標(biāo),雙擊即可得到錯誤提示信息列表窗口。</p><p><b&

68、gt;  功能規(guī)劃及現(xiàn)狀</b></p><p><b>  功能規(guī)劃的主體</b></p><p>  凡事預(yù)則立,不預(yù)則廢??茖W(xué)的規(guī)劃對于任何需要經(jīng)過較長時間努力才能實(shí)現(xiàn)的事情都是非常重要的。</p><p>  規(guī)劃,一般是指對較長時期的活動進(jìn)行總體的、全面的計(jì)劃。做好計(jì)劃是非常重要的環(huán)節(jié)。比如說郵件的開發(fā)系統(tǒng),它是一個功能很

69、多的系統(tǒng),我就必須做好規(guī)劃。主要在進(jìn)入郵箱后功能方面規(guī)劃,有收郵件、發(fā)郵件、寫郵件、通訊錄、回郵件、草稿箱、垃圾箱和轉(zhuǎn)發(fā);在登陸郵箱界面上還有注冊、注冊用戶列表、管理員登陸和退出郵箱等幾個功能。還有其它一些基本的小功能都實(shí)現(xiàn)在各個主要功能的內(nèi)部,比如說對于郵件箱內(nèi)的郵件的刪除等一些功能,這些都必須在開發(fā)前做好規(guī)劃??傊?,軟件開發(fā)中,往往缺乏科學(xué)的、有效的系統(tǒng)規(guī)劃。一定要盡量避免這些缺點(diǎn)。</p><p><

70、b>  關(guān)鍵技術(shù)</b></p><p>  隨著互聯(lián)網(wǎng)的普及,國內(nèi)外的互聯(lián)網(wǎng)用戶數(shù)呈指數(shù)增長。為滿足不斷增長的信息交流需要,作為因特網(wǎng)第一應(yīng)用的電子郵件系統(tǒng)變得越來越重要。隨著網(wǎng)絡(luò)環(huán)境的建設(shè)與完善,許多用戶已經(jīng)提出這樣的要求:擁有自己的Web郵件系統(tǒng)。國外的電子郵件系統(tǒng)可真叫四通八達(dá),這種手段已經(jīng)成為他們通信最流行的幾種方式之一了。相比較國內(nèi),電子郵件系統(tǒng)還不算太完善,電子郵件通信的方式還不算

71、太流行,如何才能把這種方式大眾化、流行化呢?這還需要我們?nèi)フJ(rèn)識它、了解它、使用它。</p><p>  國外已經(jīng)有了許許多多的電子郵件系統(tǒng),國內(nèi)也有一些這樣的系統(tǒng),我覺得這些還不夠充實(shí)這個龐大的流行團(tuán)體,所以我自己要開發(fā)一個簡單的屬于我自己的電子郵件系統(tǒng),來滿足我及其他用戶的需要。</p><p><b>  系統(tǒng)分析</b></p><p>

72、<b>  系統(tǒng)的可行性分析</b></p><p>  可行性研究是以相對短的時間和相對低的成本來確定給定的問題是否有解。這里相對短和相對低是指和實(shí)現(xiàn)建議系統(tǒng)所需時間和成本相比較而言。可行性研究主要從下述4個方面進(jìn)行研究:技術(shù)可行性、經(jīng)濟(jì)可行性、操作可行性和調(diào)度可行性。</p><p> ?。?)技術(shù)可行性:技術(shù)可行性的考慮集中在現(xiàn)存的計(jì)算機(jī)硬件能否支持被研究的系統(tǒng)

73、,首先關(guān)心的是該組織是否有相應(yīng)的軟件和硬件能夠支持處理建議的應(yīng)用程序。其次考慮在規(guī)定平臺之上,利用現(xiàn)有的成熟技術(shù)是否能夠?qū)崿F(xiàn)這個應(yīng)用?,F(xiàn)代計(jì)算機(jī)硬、軟件技術(shù)的飛速發(fā)展,為系統(tǒng)建設(shè)提供了技術(shù)條件。計(jì)算機(jī)等基礎(chǔ)設(shè)施的更新?lián)Q代也緊跟潮流的發(fā)展,這就為開發(fā)系統(tǒng)提供了堅(jiān)實(shí)基礎(chǔ)。</p><p> ?。?)經(jīng)濟(jì)可行性:這是經(jīng)典的并且是最常使用的評價(jià)計(jì)算機(jī)系統(tǒng)的方法。這個評價(jià)的結(jié)果稱為成本/效益分析。簡單地說,經(jīng)濟(jì)可行性研究是

74、確定得自新系統(tǒng)的節(jié)省和利益,將這些利益和系統(tǒng)的實(shí)現(xiàn)成本相比較,如果利益超過成本,則開發(fā)新系統(tǒng)的決策是肯定的;否則的話,除非有其他特殊原因,這個決策將是否定的。本軟件的實(shí)現(xiàn)是作為考核學(xué)生學(xué)習(xí)情況的手段,不存在經(jīng)濟(jì)可行性的問題。</p><p> ?。?)操作可行性:是指人員的手工操作而不是指計(jì)算機(jī)系統(tǒng)操作是否可行,也就是說在實(shí)現(xiàn)了建議的計(jì)算機(jī)系統(tǒng)后,所需要的配合的手工操作是否可行。作為新時代的學(xué)生,幾乎人人都具備計(jì)

75、算機(jī)的基本操作能力,而本軟件的使用又十分簡單方便,所以具備操作可行性。</p><p> ?。?)調(diào)度可行性:指的是建議的計(jì)算機(jī)系統(tǒng)能否在規(guī)定的期限內(nèi)交付給用戶?;诒拒浖?jīng)過上述的分析,可以在規(guī)定的期限內(nèi)完成[9]。</p><p>  從當(dāng)前情況來看,本軟件的開發(fā)是可行的。</p><p><b>  系統(tǒng)邏輯方案的提出</b></

76、p><p>  在問題定義階段對建議的功能、規(guī)模和約束條件等已經(jīng)作了規(guī)定。在可行性研究階段通過和使用者的交流,對用戶的需求有了初步的了解。因此在這個階段中,設(shè)計(jì)者應(yīng)該進(jìn)一步澄清問題定義中的模糊部分,更正錯誤部分。通過這個活動,清楚地描述系統(tǒng)的主要功能[10]。</p><p><b>  用例圖的分析</b></p><p><b>  

77、(1)用例的內(nèi)容:</b></p><p>  用例圖使我們對系統(tǒng)的功能有了一個整體的認(rèn)知,我們可以知道有哪些參與者會與系統(tǒng)發(fā)生交互,每一個參與者需要系統(tǒng)為它提供什么樣的服務(wù)。</p><p><b> ?。?)用例的優(yōu)點(diǎn):</b></p><p>  用例方法完全是站在用戶的角度上(從系統(tǒng)的外部)來描述系統(tǒng)的功能的。在用例方法中,

78、我們把被定義系統(tǒng)看作是一個黑箱,我們并不關(guān)心系統(tǒng)內(nèi)部是如何完成它所提供的功能的。用例方法首先描述了被定義系統(tǒng)有哪些外部使用者(抽象成為Actor),這些使用者與被定義系統(tǒng)發(fā)生交互;針對每一參與者,用例方法又描述了系統(tǒng)為這些參與者提供了什么樣的服務(wù)(抽象成為Use Case),或者說系統(tǒng)是如何被這些參與者使用的。所以從用例圖中,我們可以得到對于被定義系統(tǒng)的一個總體印象[11]。 </p><p>  與傳統(tǒng)的功能分

79、解方式相比,用例方法完全是從外部來定義系統(tǒng)的功能,它把需求與設(shè)計(jì)完全分離開來。在面向?qū)ο蟮姆治鲈O(shè)計(jì)方法中,用例模型主要用于表述系統(tǒng)的功能性需求,系統(tǒng)的設(shè)計(jì)主要由對象模型來記錄表述。另外,用例定義了系統(tǒng)功能的使用環(huán)境與上下文,每一個用例描述的是一個完整的系統(tǒng)服務(wù)。</p><p> ?。?)確定本系統(tǒng)功能的用戶用例圖,如圖4.1。</p><p>  新用戶登陸本系統(tǒng):注冊用戶; 已經(jīng)注冊的

80、用戶:直接輸入用戶名和密碼登陸系統(tǒng); 登陸成功:進(jìn)入郵箱,其中具有收發(fā)郵件、寫郵件、刪除郵件等功能; 操作系統(tǒng)完成:可以退出本系統(tǒng)。</p><p> ?。?)確定本系統(tǒng)功能的管理員用例圖,如圖4.2。</p><p>  返回管理員登陸界面; 管理用戶信息; 安排系統(tǒng)設(shè)置;</p><p><b>  退出管理員系統(tǒng)。</b></p&g

81、t;<p><b>  系統(tǒng)管理員功能</b></p><p> ?。?)管理員登錄:系統(tǒng)初始化好系統(tǒng)管理員,管理員能夠通過該入口進(jìn)入后臺進(jìn)行管理操作。</p><p>  (2)管理員管理注冊用戶:管理員可以對系統(tǒng)的注冊用戶進(jìn)行管理,查詢系統(tǒng)中的注冊用戶,直接添加用戶,對于違規(guī)用戶可以刪除,以及查看某注冊用戶的詳細(xì)注冊信息和列為好友。</p>

82、;<p>  (3)管理員系統(tǒng)設(shè)置:系統(tǒng)一般有一些初始化信息,比如系統(tǒng)名稱、系統(tǒng)的URL、主業(yè)名稱、主頁的URL、系統(tǒng)管理員E-mail、系統(tǒng)Logo通信、有新郵件提示等,管理員可以在后臺界面自行設(shè)置。</p><p> ?。?)用戶注冊:網(wǎng)絡(luò)用戶均能夠注冊。注冊的用戶信息包括注冊名、性別、密碼、確認(rèn)密碼(以便保證用戶兩次輸入的密碼都一樣)、電子郵件、QICQ號碼等。其中注冊名、性別、密碼和電子郵件

83、是必添項(xiàng),并且用戶名不能重復(fù)。</p><p><b>  用戶功能</b></p><p>  (1)用戶登錄:系統(tǒng)注冊用戶使用自己注冊的用戶名登錄系統(tǒng),進(jìn)行郵件的管理和個人注冊信息的管理。其中郵件的管理又包括收件箱、垃圾箱、草稿箱、發(fā)件箱、通信薄等的管理。</p><p> ?。?)撰寫發(fā)送郵件:填寫收件人、標(biāo)題和收件內(nèi)容后,可以給發(fā)件人發(fā)

84、送郵件。</p><p> ?。?)收件箱管理:顯示用戶所有收到的郵件列表,可以查看郵件的詳細(xì)內(nèi)容,可以選中所要刪除的郵件進(jìn)行刪除或者刪除收件箱中所有郵件,所刪除的郵件被轉(zhuǎn)移到垃圾箱。</p><p> ?。?)垃圾箱管理:顯示用戶從收件箱中刪除的所有郵件列表,可以查看郵件的詳細(xì)內(nèi)容,可以選中所要刪除的郵件進(jìn)行刪除或者刪除垃圾箱中所有郵件,所刪除的郵件則被徹底地刪除。</p>

85、<p>  (5)草稿箱管理:顯示用戶所有保存的準(zhǔn)備發(fā)送的郵件列表,可以查看郵件的詳細(xì)內(nèi)容并且進(jìn)行修改,可以選中所要刪除的郵件進(jìn)行刪除或者刪除草稿箱中所有郵件。</p><p> ?。?)發(fā)件箱管理:顯示用戶發(fā)送的所有郵件列表,可以查看郵件的詳細(xì)內(nèi)容,可以選中所要刪除的郵件進(jìn)行刪除或者刪除所有已發(fā)郵件。</p><p>  (7)通信薄的管理:顯示所有好友列表,可以添加好友,可

86、以選中所要刪除記錄進(jìn)行刪除或者刪除所有好友,可以查看個人詳細(xì)信息,可以選中其中的好友發(fā)送郵件。</p><p><b>  系統(tǒng)設(shè)計(jì)</b></p><p><b>  系統(tǒng)流程圖</b></p><p>  系統(tǒng)流程圖又叫事務(wù)流程圖,是在計(jì)算機(jī)事務(wù)處理應(yīng)用進(jìn)行系統(tǒng)分析時常用的一種描述方法(另一個是數(shù)據(jù)流圖),它描述了計(jì)算

87、機(jī)事務(wù)處理中從數(shù)據(jù)輸入開始到獲得輸出為止,各個處理工序的邏輯過程。</p><p><b>  管理員的系統(tǒng)流程圖</b></p><p>  首先管理員要系統(tǒng)參數(shù)設(shè)置和管理,當(dāng)用戶注冊成為系統(tǒng)用戶之后,管理員在進(jìn)行對用戶的管理工作,流程如下圖5-1所示。</p><p>  圖5-1 系統(tǒng)流程圖-管理員</p><p>

88、;<b>  用戶的系統(tǒng)流程圖</b></p><p>  沒有身份的用戶需要先注冊,登錄系統(tǒng)后可以查看和修改個人信息、發(fā)送郵件等郵件管理操作。如下圖5-2所示。</p><p>  圖5-2 系統(tǒng)流程圖-注冊用戶</p><p><b>  系統(tǒng)模塊的功能圖</b></p><p>  通過系統(tǒng)模

89、塊的功能圖描述,可以很直觀的看到系統(tǒng)的各個功能組件,功能圖如下圖5-3所示。</p><p>  此模塊的功能圖是從整個系統(tǒng)出發(fā),描繪出來的。其中介紹了管理員各個功能和基本用戶的功能等等。用模塊的功能圖描繪整個系統(tǒng),使系統(tǒng)各個功能清晰可見,層次分明,是一種比較好的方法。</p><p>  圖5-3 模塊的功能圖</p><p>  實(shí)體之間的關(guān)系E-R圖</

90、p><p>  在此郵件系統(tǒng)中的實(shí)體有管理員信息實(shí)體、用戶信息實(shí)體、郵件實(shí)體、系統(tǒng)配置信息實(shí)體。</p><p>  實(shí)體之間的關(guān)系E-R圖如下圖5-4所示。</p><p>  圖5-4 實(shí)體之間的關(guān)系E-R圖</p><p><b>  數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)</b></p><p>  在郵件服務(wù)器系統(tǒng)

91、的數(shù)據(jù)庫設(shè)計(jì)中,首先要創(chuàng)建系統(tǒng)數(shù)據(jù)庫,然后在數(shù)據(jù)庫中創(chuàng)建需要的表和字段。</p><p>  數(shù)據(jù)庫設(shè)計(jì)是系統(tǒng)設(shè)計(jì)中非常重要的一個環(huán)節(jié),因?yàn)閿?shù)據(jù)庫設(shè)計(jì)就像在建設(shè)高樓大廈的根基一樣,如果設(shè)計(jì)不好,在后來的系統(tǒng)維護(hù)、變更和功能擴(kuò)充時,甚至于在系統(tǒng)開發(fā)過程中,都將會引起比較大的問題,有時大量的工作將會重新進(jìn)行[12]。</p><p>  考慮到將來功能上的擴(kuò)展,設(shè)計(jì)如下所示的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):

92、</p><p>  用戶信息:包括數(shù)據(jù)項(xiàng),有用戶名、密碼等。</p><p>  郵件信息:包括數(shù)據(jù)項(xiàng),有發(fā)件人、收件人、主題、內(nèi)容、發(fā)送時間等。</p><p>  系統(tǒng)配置信息:包括數(shù)據(jù)項(xiàng),有系統(tǒng)名稱、系統(tǒng)說明、系統(tǒng)通信等。</p><p>  基于上面的設(shè)計(jì),在設(shè)計(jì)系統(tǒng)中的各表,表與表之間相互關(guān)聯(lián),系統(tǒng)所需要的數(shù)據(jù)被共同存儲著。在設(shè)計(jì)

93、數(shù)據(jù)庫表的過程中,一般要遵循以下幾個原則:數(shù)據(jù)庫設(shè)計(jì)的表最好只存儲一個實(shí)體或?qū)ο蟮南嚓P(guān)信息,不同的實(shí)體最好能夠存儲在不同的數(shù)據(jù)表中,如果實(shí)體還可以再劃分,實(shí)體的劃分原則是最好能夠比當(dāng)前系統(tǒng)要開發(fā)的實(shí)體的復(fù)雜度更??;數(shù)據(jù)表的信息結(jié)構(gòu)一定要合適,標(biāo)的字段的數(shù)量一般不要過多;擴(kuò)充信息和動態(tài)變化的信息一定要分開在不同的表里;多對多這樣的表關(guān)系盡量不要出現(xiàn)等[13]。</p><p><b>  創(chuàng)建數(shù)據(jù)表<

94、;/b></p><p>  在創(chuàng)建表與視圖之前,首先要創(chuàng)建一個數(shù)據(jù)庫,步驟如下:</p><p>  啟動Mysql服務(wù)管理器,啟動服務(wù)。</p><p>  進(jìn)入企業(yè)管理器,建立數(shù)據(jù)庫bbs。</p><p>  進(jìn)入新建數(shù)據(jù)庫的用戶選項(xiàng),右擊“建立用戶”命令,輸入用戶名mail,密碼mail,選擇該用戶的權(quán)限為public,do_

95、owner。</p><p>  本系統(tǒng)各個表的設(shè)計(jì)結(jié)果如表5-5所示。</p><p><b>  表5-5數(shù)據(jù)庫表</b></p><p><b>  系統(tǒng)信息配置表</b></p><p>  系統(tǒng)信息配置表如表5-6所示,該表對系統(tǒng)的某些信息進(jìn)行配置,如系統(tǒng)URL通信、公司名稱、主頁URL通

96、信、E-mail、適應(yīng)時間、圖片通信等。進(jìn)行這些設(shè)置是為了盡可能最大地利用有限的資源,同時更有效地管理系統(tǒng),對使用該系統(tǒng)的用戶量的信息也有一個很好的紀(jì)錄。利用這個表,對系統(tǒng)的某些信息進(jìn)行配置,使這些信息更加的清晰、使用也方便。</p><p>  表5-6 config 系統(tǒng)配置表</p><p><b>  日志表</b></p><p> 

97、 表5-7是日志表記錄本系統(tǒng)的用戶訪問信息。l_id即“日志編號”是系統(tǒng)為其分配的唯一標(biāo)識符;l_username是使用此系統(tǒng)的用戶名;l_content是系統(tǒng)日志的一個主要內(nèi)容記錄;l_url記錄了用戶訪問得系統(tǒng)的通信;l_addtime是此條日志生成的時間。這部分內(nèi)容是給系統(tǒng)預(yù)留的接口,使得有擴(kuò)展的功能。</p><p><b>  表5-7 日志表</b></p><

98、;p><b>  用戶表</b></p><p>  表5-8是用戶表,該表包含了用戶的基本且必要的信息,其中UserID是“用戶編號”,是系統(tǒng)為用戶分配的唯一標(biāo)識符,它在整個用戶表存儲的數(shù)據(jù)里是互不相同的,而且在系統(tǒng)的許多其它表里也要用到它;用戶名和密碼也是必需的,作為用戶登錄的入口,其中用戶名也要求是唯一的。</p><p><b>  表5-8

99、用戶表</b></p><p>  注:此表只列出基本信息,常用的未作分析,例如:用戶年齡段、用戶生日、用戶學(xué)歷、所在城市等,而用戶年齡段和用戶學(xué)歷可以用來對用戶群體進(jìn)行分析,以便確定系統(tǒng)的使用群體。</p><p><b>  friend好友表</b></p><p>  表5-9是friend好友表,該表用于記錄用戶加入到通信

100、薄中的用戶,方便用戶給好友發(fā)送郵件。</p><p><b>  表5-9 好友表</b></p><p><b>  郵件信息記錄表</b></p><p>  表5-10是郵件信息記錄表,記錄系統(tǒng)用戶所發(fā)送的所有郵件。</p><p>  表5-10郵件信息記錄表</p><

101、p>  至此,個個數(shù)據(jù)表的結(jié)構(gòu)全部設(shè)計(jì)完成,即定義好郵件系統(tǒng)的數(shù)據(jù)結(jié)構(gòu),用于存儲郵件系統(tǒng)中的各項(xiàng)數(shù)據(jù)。</p><p><b>  數(shù)據(jù)庫的E-R圖</b></p><p>  本系統(tǒng)根據(jù)上面的設(shè)計(jì)規(guī)劃出的實(shí)體包括用戶信息實(shí)體(MyUser)、郵件數(shù)據(jù)實(shí)體(message)、系統(tǒng)配置信息實(shí)體(config)、好友實(shí)體(friend)等。通過對實(shí)體聯(lián)系的分析,在本

102、系統(tǒng)中使用PowerDesigner設(shè)計(jì)E-R模型。PowerDesigner的概念數(shù)據(jù)模型(CDM)把現(xiàn)實(shí)的信息簡化為實(shí)體與實(shí)體之間的聯(lián)系,它與DBMS無關(guān)。CDM的建立是一個比較復(fù)雜的過程,實(shí)體關(guān)系圖的分析結(jié)果也非常復(fù)雜,一般情況下使用自底向上的方法,首先對局部視圖進(jìn)行分析設(shè)計(jì),然后再實(shí)現(xiàn)視圖集成。這里不再對局部視圖進(jìn)行設(shè)計(jì),直接給出視圖集成后的E-R圖,如圖5-11所示。</p><p>  圖5-11 簡

103、易郵件系統(tǒng)數(shù)據(jù)庫E-R圖</p><p>  使用用戶信息進(jìn)行用戶基本信息的管理,以及登錄系統(tǒng)時用戶名、密碼和權(quán)限的設(shè)定;在設(shè)計(jì)時,充分考慮了用戶使用郵件系統(tǒng)收發(fā)郵件的便捷性。其實(shí),以上E-R圖只是簡易郵件系統(tǒng)最基本元素的實(shí)體關(guān)系圖,讀者可以在此基礎(chǔ)上根據(jù)用戶的不同需要進(jìn)行擴(kuò)展。</p><p><b>  程序設(shè)計(jì)與實(shí)現(xiàn)</b></p><p&g

104、t;  有系統(tǒng)設(shè)計(jì)可知本系統(tǒng)的設(shè)計(jì)共分為如下兩大部分:</p><p> ?。?)管理模塊用于管理員對注冊用戶管理和系統(tǒng)設(shè)置管理,它包括:</p><p><b>  管理員登錄界面;</b></p><p>  用戶管理:列表、搜索、查看、增加、刪除;</p><p>  系統(tǒng)設(shè)置管理:查看、修改。</p>

105、<p> ?。?)用戶模塊:用于用戶進(jìn)行郵件管理,它包括:</p><p>  注冊:注冊、修改個人信息;</p><p><b>  登錄:登錄;</b></p><p>  撰寫發(fā)送郵件:發(fā)送郵件;</p><p>  收件箱管理:列表、查看、刪除、清空收件箱;</p><p>

106、  垃圾箱管理:列表、查看、刪除、清空垃圾箱;</p><p>  草稿箱管理:列表、查看、刪除、清空草稿箱;</p><p>  發(fā)件箱管理:列表、查看、刪除、清空發(fā)件箱;</p><p>  通信薄管理:列表、查看、刪除、清空通信薄、添加好友、發(fā)送郵件。</p><p>  根據(jù)這些整體關(guān)系的設(shè)計(jì)下面對每一個部分給出主界面的設(shè)計(jì)及其設(shè)計(jì)思

107、路。</p><p>  管理員登錄模塊設(shè)計(jì)與實(shí)現(xiàn)</p><p>  管理員用戶登錄的界面中,包括用戶名和密碼得輸入文本框,以及提交登錄按鈕和重寫按鈕。管理員登錄界面如圖6-1所示。</p><p>  圖6-1管理員登錄界面</p><p>  管理員的登錄,使用的是類User.java,SkinUtil.java等,其中User.jav

108、a是專門為用戶寫的一個類,同時也作為一般用戶的登錄類,該類代碼如下:</p><p><b>  //登錄參數(shù)</b></p><p>  private String username;//登錄用戶名</p><p>  private String password;//登錄密碼</p><p>  privat

109、e int userClass;//管理級別,用來判斷是否管理員登錄</p><p>  在執(zhí)行登錄時,頁面mail\jsp\elogin.jsp調(diào)用類文件中的函數(shù)所填寫的信息進(jìn)行處理,然后對登錄管理員進(jìn)行驗(yàn)證。</p><p>  管理員用戶管理模塊設(shè)計(jì)與實(shí)現(xiàn)</p><p>  管理員登錄后,首要的功能是對系統(tǒng)用戶和系統(tǒng)參數(shù)的管理。管理員的管理主頁面上具有進(jìn)入

110、用戶管理和系統(tǒng)參數(shù)設(shè)置管理的入口。當(dāng)管理員進(jìn)行管理操作之后,要退出管理界面,則要退出管理的出口。設(shè)計(jì)結(jié)果如圖6-2所示。</p><p>  圖6-2管理員登錄主界面</p><p>  圖6-2所示即為管理員登錄后的管理首頁,單擊左邊的“返回管理首頁”鏈接返回到管理首頁,單擊“注冊用戶管理”鏈接可以進(jìn)行用戶管理,單擊“系統(tǒng)設(shè)置”鏈接可以進(jìn)行系統(tǒng)參數(shù)設(shè)置管理,單擊“退出管理”鏈接可以退出管

111、理界面。</p><p>  用戶的信息需要由系統(tǒng)管理員來進(jìn)行管理和維護(hù)。為此,設(shè)計(jì)了用戶列表的界面,該界面中需要包括如下的信息:用戶的ID號(數(shù)據(jù)庫表中的編號)、用戶名,還應(yīng)該提供用戶管理的入口,包括刪除等,還應(yīng)該提供可以查看詳細(xì)資料的查看入口來顯示用戶的基本信息,以及用來填寫所要查詢用戶的用戶名的文本框和查詢按鈕。注冊用戶列表頁面設(shè)計(jì)如圖6-3所示。</p><p>  圖6-3管理員

112、用戶管理界面</p><p>  當(dāng)管理員需要刪除用戶時,只需要在對應(yīng)的用戶名的checkbox打上鉤,然后單擊“刪除”按鈕,就可以刪除所有選中的用戶。當(dāng)需要查找某用戶名時,只需要在文本中填寫用戶名,然后單擊“查詢”按鈕,即可查找出所有符合條件的用戶列表信息。當(dāng)需要查看某一用戶的詳細(xì)信息時,只需要單擊用戶名,通過此鏈接可以查看用戶注冊基本信息,此界面和用戶表對應(yīng),顯示信息包括用戶名、性別、個人主頁、登錄次數(shù)、最后

113、登錄時間、注冊時間OICQ和E-mail。</p><p>  在如圖6-3所示的用戶基本信息界面中,為了方便使用,在界面底部還設(shè)計(jì)了給當(dāng)前所查看用戶郵件和加為好友的鏈接。</p><p>  關(guān)于管理員進(jìn)行用戶管理,其中主要使用的是類UserManager.java,當(dāng)然缺少不了用戶類User.java和其他一些進(jìn)行基本處理的類。根據(jù)界面部分的設(shè)計(jì)可知,用戶的管理包括的功能有取得所有用戶

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論