freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于javamail的電子郵件系統(tǒng)的設(shè)計與實現(xiàn)畢業(yè)論文-文庫吧資料

2024-11-15 22:01本頁面
  

【正文】 前臺 Jsp 頁面與后臺服務(wù)器的動態(tài)交互。 Spring 是配合Struts2和 Hibernate來實現(xiàn)對象的動態(tài)注入以及 Hibernate操作數(shù)據(jù)庫時的事務(wù)操作。 圖 513 用戶查看電子郵件協(xié)作圖 系統(tǒng)模塊的實現(xiàn) 電子郵件系統(tǒng)的具體實現(xiàn)是采用 Struts2 + Spring + Hibernate 來實現(xiàn)的。 根據(jù)查看電子郵件的工作流程,用戶查看電子郵件序列圖如圖 512 所示。 9. 業(yè)務(wù)邏輯類再將電子郵件的具體信息返回給郵件顯示頁面。 7. 用戶選擇的郵件信息傳遞個業(yè)務(wù)邏輯 類,業(yè)務(wù)邏輯類再將該數(shù)據(jù)發(fā)送到查看電子郵件類。 5. 向用戶發(fā)送郵件列表信息頁面。并返回具體的郵件信息列表。 2. 業(yè)務(wù)邏輯類根據(jù)用戶提交的信息訪問數(shù)據(jù)訪問類。 圖 511 用戶發(fā)送電子郵件協(xié)作圖 用戶查看電子郵件設(shè)計 1. 用戶進入主界面,然后選擇要查看郵件的郵件箱。 根據(jù)基本流程,用戶發(fā)送電子郵件序列圖如圖 510 所示。 4. 業(yè)務(wù)邏輯類根據(jù)返回的成功信息,返回給用戶發(fā)送成功頁面。 3. 業(yè)務(wù)邏輯類調(diào)用發(fā)送郵件類發(fā)送電子郵件。 圖 59 安全郵箱找回密碼序列圖 用戶發(fā)送電子郵件設(shè)計 1. 用戶進入發(fā)送電子郵件界面,填寫要發(fā)送電子郵件的內(nèi)容并提交。通過安全問題找回密碼序列圖如圖 58 所示。通過安全問題找回密碼是用戶需要回答安全問題,當回答的問題正確時用戶可以任意的修改自己想要的密碼。用戶找回密碼用戶名檢測序列圖如圖 57 所示。 9. 返回密碼重置郵件發(fā)送成功信息,向用戶展示密碼重置成功頁面。 7. 安全 問題答案錯誤,則返回錯誤信息給業(yè)務(wù)邏輯類,業(yè)務(wù)邏輯類將顯示錯誤頁面給用戶。 6. 數(shù)據(jù)訪問類根據(jù)用戶提交的新密碼信息檢測安全問題答案是否正確。 5. 在安全問題頁面用戶輸入新密碼和安全問題答案并提交。 4. 如果返回成功信息,則進入選擇找回密碼方式頁面。數(shù)據(jù)訪問類通過訪問數(shù)據(jù)庫檢測用戶輸入的信息是否有效。用戶提交的消息傳遞給業(yè)務(wù)邏輯類。 圖 55 注冊新用戶序列圖 與注冊新用戶序列圖等價的協(xié)作圖如圖 56 所示。 7. 顯示用戶注冊是否成功的具體頁面給用戶。并返回成功信息給業(yè)務(wù)邏輯類。 4. 業(yè)務(wù)邏輯類再將用戶注冊的基本信息提交各數(shù)據(jù)庫訪問類 。 2. 系統(tǒng)將用戶提交的用戶注冊信息封裝成一個對象,并將數(shù)據(jù)提交給業(yè)務(wù)邏輯類。 圖 53 用戶登錄系統(tǒng)序列圖 與用戶登錄電子郵件系統(tǒng)序列圖等價的協(xié)作圖如圖 54 所示。否則繼續(xù)進行下一步操作。 5. 用戶在登錄界面獲得驗證結(jié)果。 3. 業(yè)務(wù)邏輯層類再根據(jù)用戶提交的賬號訪問數(shù)據(jù)訪問類,數(shù)據(jù)訪問類再根據(jù)用戶賬號來檢測用戶身份的合法性。 圖 52 郵件系統(tǒng)功能結(jié)構(gòu)圖 用戶登錄郵件系統(tǒng)設(shè)計 1. 用戶登錄系統(tǒng),在登錄頁面輸入自己的賬號和密碼并提交。 系統(tǒng)模塊設(shè)計 電子郵件系統(tǒng)的主要使用人員是普通用戶,通過對系統(tǒng)需求的分析可得用戶與系統(tǒng)之間的交互行為有用戶登錄系統(tǒng)、用戶找回密碼、注冊新用戶 、用戶修改個人信息、查看電子郵件、刪除電子郵件、發(fā)送電子郵件、查找電子郵件和通過高級查找精確的查找電子郵件。 3. 數(shù)據(jù)訪問層:數(shù)據(jù)訪問層主要負責數(shù)據(jù)庫操作,所有與數(shù)據(jù)庫有關(guān)的操作都交給數(shù)據(jù)訪問層來實現(xiàn)。這樣用戶界面層可以無需了解數(shù)據(jù)庫的結(jié)構(gòu),只要維護與業(yè)務(wù)邏輯層之間的接口即可。將系統(tǒng)盡可能簡單大方的展現(xiàn)給用戶。 圖 51 系統(tǒng)架構(gòu)圖 在三層架構(gòu)中,各個層次的功能描述如下: 1. 表現(xiàn)層:表現(xiàn)層主要完成響應(yīng)客戶操作和向數(shù)據(jù)訪問層發(fā)送請求。在系統(tǒng)結(jié)構(gòu)上,采用三層架構(gòu)設(shè)計,包括:表現(xiàn)層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層。 系統(tǒng)實現(xiàn)盡量簡化頁面結(jié)構(gòu),抽象出公用模塊,以實現(xiàn)代碼復(fù)用 。在設(shè)計中,需要刪除不必要的數(shù)據(jù)冗余,實現(xiàn)系統(tǒng)開發(fā)的規(guī)范化、科學化、程序代碼標準化、統(tǒng)一化,確保軟件的可維護性和實用性,做到界面盡量簡單化,做到實用、方便。 5 詳細設(shè)計與實現(xiàn) 系統(tǒng)體系結(jié)構(gòu)設(shè)計 電子郵件系統(tǒng)的特點是信息處理量比較大,各個環(huán)節(jié)要求連接性能強。 表 43 用戶基本信息表 字段名 英文名稱 字段類型 字段大小 信息 ID id bigInt 20 媒體類型 mediaType Varchar 255 子類型 subtype Varchar 255 信息頭字節(jié) bodyStartOctet Int 11 內(nèi)容字節(jié) contentOctets bigInt 20 內(nèi)容 content Longblob 小結(jié) 本章介紹了 數(shù)據(jù)庫的設(shè)計與實現(xiàn),對數(shù)據(jù)庫進行了細致的設(shè)計:數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計和數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計。 表 43 用戶基本信息表 字段名 英文名稱 字段類型 字段大小 用戶 ID id Int 11 家庭住址 address Varchar 36 昵稱 alias Varchar 50 安全問題答案 answer Varchar 30 性別 gender Varchar 5 備注 mark Varchar 255 電話號碼 phoneNum Varchar 14 安全郵箱 pwdEmail Varchar 64 安全問題 question Varchar 20 郵件信息表主要是存儲用戶接受的郵件信息內(nèi)容以及其他的信息。有了這些信息用戶可以方便的進行找回密碼等操作。其中版本號是用來實現(xiàn)樂觀鎖的,有了樂觀鎖就可以有效的降低數(shù)據(jù)訪問出錯的概率。因為用戶賬號和密碼使用的頻率比較頻繁而且 james 郵件服務(wù)器也要使用該表,所以將用戶登錄信息表單獨抽取出來作為一張表。使用樂觀鎖可以有效地避免臟讀、讀已提交等數(shù)據(jù)庫訪問常見問題其表結(jié)構(gòu)設(shè)計如表 42 所示。具體的數(shù)據(jù)庫表的實現(xiàn)如下。本系統(tǒng)的數(shù)據(jù)庫使用的是 MySQL 數(shù)據(jù)庫,建造的數(shù)據(jù)庫名稱為 。 通過對數(shù)據(jù)庫基本信息和用戶的基本需求進行分析可以得出系統(tǒng)的實體之間關(guān)系的 ER 圖如圖 41 所示。 用戶基本信息實體包括的屬性有昵稱、性別、家庭住址、電話號碼、安全問題、安全問題答案、安全郵箱和備注其實體屬性圖,其中用戶 ID 為主鍵。如表 41 所示。概念結(jié)構(gòu)設(shè)計的目標是產(chǎn)生反 映信息需求的整體數(shù)據(jù)庫概念結(jié)構(gòu),即概念模式,描述概念結(jié)構(gòu)的工具是 ER 圖 [15]。 數(shù)據(jù)庫的設(shè)計 數(shù)據(jù)庫的設(shè)計包括兩方面的內(nèi)容,分別是數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計和數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計。 4 總體設(shè)計 要想很好的完成一個項目,數(shù)據(jù)庫的設(shè)計是整個項目設(shè)計中的關(guān)鍵,一個好的數(shù)據(jù)庫表結(jié)構(gòu)能有效的管理后臺中的數(shù)據(jù),提高軟件的實用性和軟件的數(shù)據(jù)訪問效率。 小結(jié) 本章對系統(tǒng)進行了需求分析,首先通過對系統(tǒng)功能需求的分析了解了系統(tǒng)中普通用戶應(yīng)完成的功能。 經(jīng)過對系統(tǒng)功能的數(shù)據(jù)分析和總結(jié),設(shè)計出了如下所示的數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu): 用戶登錄信息:用戶賬號、用戶密碼、密碼加密算法、用戶是否是被禁用等。 2. 當用戶忘記登 錄密碼的時候用戶可以通過密碼找回郵箱重新找回或重新設(shè)置登錄密碼。存取密碼的時候要存取相應(yīng)的密碼加密算法。 對于用戶來說用戶需要登錄系統(tǒng)登錄系統(tǒng)時用戶需要輸入用戶賬號和用戶密碼。 數(shù)據(jù)庫需求分析 郵件系統(tǒng)用于存入數(shù)據(jù)庫的信息只有用戶的基本信息和聯(lián)系人的基本信息,至于電子郵件的具體存儲位置則是由 Apache James 郵件服務(wù)器負責完成。 4. 實時性:由于電子郵件的用戶范圍很廣泛以及用戶使用電子郵件系統(tǒng)的時間又具有不確定性,所以電子郵件系統(tǒng)服務(wù)器必須在時間上滿足全天候的啟動服務(wù)。 3. 安全性:電 子郵件相當于過去的信件,現(xiàn)在的電子郵件就相當于在網(wǎng)絡(luò)中傳輸?shù)男偶?,由于網(wǎng)絡(luò)的不安全電子郵件在傳送過程中必須確保電子郵件的安全。而且當電子郵件發(fā)送失敗的時候系統(tǒng)也應(yīng)該給出相應(yīng)的提示信息。 性能需求分析 電子郵件系統(tǒng)主要的用戶群是普通用戶,所以在設(shè)計上必須遵循以下幾點準則: 1. 易用性:電子郵件系統(tǒng)可以像使用留言電話一樣,在自己方便的時候處理記錄下來的請求,通過電子郵件可以方便地傳送文本信息、圖像文件、報表和計算機程序。當用戶需要刪除某一封電子郵件的時候可以使用刪除電子郵件功能,同時用戶也可以發(fā)送新的電子郵件給其他用戶。修改個人信息使用戶可以修改自己的個人信息。 3. 通過對于用戶功能需求進一步分析得出用戶詳細的用例圖如圖 32 所示。 ( 3)管理郵件信息:用戶可以通 過該系統(tǒng)查看和發(fā)送電子郵件。 圖 31 用戶簡單用例圖 ( 1)找回密碼:當用戶忘記登錄密碼的時候可以通過該功能找回登錄密碼。當查看電子郵件的時候能夠顯示郵件的基本內(nèi)容,同時還能夠下載帶有附件的電子郵件附件。 ( 3)用戶對收取電子郵件的基本要求。系統(tǒng)應(yīng)該能夠進行簡單的電子郵件的發(fā)送,同時還要能發(fā)送復(fù)雜一點的電子郵件例如帶有附件、郵件內(nèi)容為 HTML 格式的郵件 等。用戶應(yīng)該能夠在登錄系統(tǒng)之后修改自己的基本信息例如用戶昵稱、密碼等。如果用戶密碼丟失用戶能過通過注冊時填寫的用戶信息來找回密碼。 功能 需求分析 1. 電子郵件系統(tǒng)主要功能是普通用戶收發(fā)電子郵件的,本系統(tǒng)的使用者角色只有普通用戶。功能性需求是系統(tǒng)需要實現(xiàn)的,提供給用戶使用的具體的功能;非功能性需求是為了滿足用戶對系統(tǒng)功能的需求,系統(tǒng)正常工作所應(yīng)當具備的系統(tǒng)的特定特性,如性能、安全性、可用性、可擴展性等等,二者互為影響。 系統(tǒng)需求分析 軟件系統(tǒng)的需求一般可以分為功能性需求和非功能性需求。前臺的應(yīng)用程序與后臺數(shù)據(jù)庫使用 JDBC 技術(shù)連接起來進行相互 操作。用戶可以對所有個人信息進行修改、查詢以及找回密碼操作,以及對郵件信息的發(fā)送、接受、刪除、查詢以及移動等操作。 根據(jù)分析,本系統(tǒng)的設(shè)計目標是:設(shè)置一個登錄窗口供用戶登錄。 4. 強內(nèi)聚:內(nèi)聚是衡量一個模塊內(nèi)各個元素彼此結(jié)合的緊密程度。弱耦合是優(yōu)秀設(shè)計的一個重要標準,因為這有助于使得系統(tǒng)中某一部分的變化對其他部分的影 響降到最低程度。重用有兩方面的含義:一是盡量使用已有的類 包括開發(fā)環(huán)境提供的類庫,及以往開發(fā)類似系統(tǒng)是創(chuàng)建的類 ,二是如果確實需要創(chuàng)建新類,則在設(shè)計這些新類的協(xié)議時,應(yīng)該考慮將來的可重復(fù)使用性。 1. 模 塊化:再設(shè)計系統(tǒng)的時候應(yīng)當盡可能的將數(shù)據(jù)結(jié)構(gòu)和操作這些數(shù)據(jù)的方法緊密地結(jié)合在一起,使得系統(tǒng)能夠被分解成各個獨立的模塊。因此,優(yōu)秀的軟件設(shè)計的一個主要特點就是容易維護。 系統(tǒng)設(shè)計的目標 系統(tǒng)開發(fā)的總體任務(wù)是實現(xiàn)電子郵件系統(tǒng)開發(fā)的系統(tǒng)化、規(guī)范化和自動化,從而達到提高電子郵件系統(tǒng)開發(fā)的效率的目的和提高軟件產(chǎn)品的質(zhì)量 [14]。郵件系統(tǒng)在開發(fā)的過程也應(yīng)嚴格遵循這一過程,進行詳細的需求分析設(shè)計,從而設(shè)計出一個優(yōu)秀的電子郵件系統(tǒng)軟件 [13]。軟件生存周期是根據(jù)軟件所處的狀態(tài)、特征以及軟件開發(fā)活動的目的、任務(wù)可以劃分若干階段 ,從這一思想出發(fā),軟件生存周期包括軟件定義,軟件開 發(fā)、軟件使用與維護三個部分 ,具體則可以得到軟件生存周期的六個步驟,即制定計劃、需求分析,軟件設(shè)計、程序編碼、測試及運行維護。需求分析的結(jié)果反映了用戶的時間需求,它將影響到設(shè)計的合理性和實用性。在確定系統(tǒng)的總體結(jié)構(gòu)方案過程中,需要確定應(yīng)用程序的結(jié)構(gòu)、系統(tǒng)開發(fā)環(huán)境、系統(tǒng)測試環(huán)境和運行環(huán)境以及系統(tǒng)的功能模塊。然后介紹了開發(fā)系統(tǒng)的各種工具,為搭建好開發(fā)系統(tǒng)的環(huán)境做了準備。 SMTP 協(xié)議規(guī)定了郵件信息的具體格式和郵件的管理方式。用戶計算機上運行的電子郵件客戶機程序請求郵件服務(wù)器進行郵件傳輸,郵件服務(wù)器采用簡單郵件傳輸協(xié)議標準。 Inter 上傳送電子郵件是通過一套稱為郵件服務(wù)器的程序進行硬件管理并儲存的。 IMAPPOP 那樣提供了方便的郵件下載服務(wù),讓用戶能進行離線閱 讀,但 IMAP 能完成的卻遠遠不只這些。它要求郵件服務(wù)器完成下面幾種任務(wù)之一:從郵件服務(wù)器中檢索郵件并從服務(wù)器中刪除這個郵件;從郵件服務(wù)器中檢索郵件但不刪除它;不檢索郵件,只是詢問是否有新郵件到達。 POP3 協(xié)議 POP 的全稱是 Post Office Protocol,即郵局協(xié)議, 用于電子郵件的接收,它使用 TCP 的 110 端口,現(xiàn)在常用的是第三版 ,所以簡稱為 POP3。 SMTP 的一個重要特點是它能夠在傳送中接力傳送郵件,即郵件可以通過不同網(wǎng)絡(luò)上的主機接力式傳送。 SMTP 協(xié)議 SMTP 的全稱是 Simple Mail Transfer Protocol,即簡單郵件傳輸協(xié)議。當前常用的電子郵件協(xié)議有 SMTP、 POP IMAP4,它們都隸屬于 TCP/IP 協(xié)議簇,默認狀態(tài)下,分別通過 TCP 端口 2 110 和 143 建立連接。通過連接全世界的 Inter,實現(xiàn)各類信號的傳送、接收、存貯等處理 ,將郵件送到世界的各個角落。它是全球多種網(wǎng)絡(luò)上使用最普遍的一項服務(wù)。當然你也可以在這里使用其他 MTA(郵件傳輸代理),比如 SendMail,要這樣作的話我們需要提供一個可調(diào)用的程序然后將數(shù)據(jù)傳送給它來完成工作,不過, James 提供了一套更簡單、通用的 API 來完成這些工作。 James 支持標準的 協(xié)議( SMTP, POP3, IMAPJames 當作一個通常的消息服務(wù)器或者為即時消息傳輸提供支持。 James 提供了完善的服務(wù),包括一個完全可以運行的 Email 服務(wù)器。比如它完全使用 Java 開發(fā)以便適應(yīng)最大的輕便行;它提供了很多安全特
點擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1