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

正文內(nèi)容

基于javamail的電子郵件系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文-免費(fèi)閱讀

  

【正文】 // 復(fù)制郵件到指定的郵件 夾中 messages, , true 。 return folder。// 連接到郵件服務(wù)器 // 創(chuàng)建與服務(wù)器的連接 private void connection throws MessagingException Session session MailSession .getInstance /edu/pdsu/service/mail/ 。// 附件的名稱 private String folderName null。 收取電子郵件代碼 : public class ReceiveMail private String host localhost。 Matcher matcher mailadd 。// 設(shè)置密送人 if ! null amp。amp。 , UTF8, Q 。 MimeMultipart mixed new MimeMultipart mixed 。 FileDataSource fds new FileDataSource res 。 // 創(chuàng)建含有內(nèi)嵌資源的郵件體 related private MimeMultipart createRelated MimeMultipart multipart throws MessagingException MimeBodyPart alternative new MimeBodyPart 。 。 // 創(chuàng)建含有內(nèi)嵌資源的郵件體 related if ! null amp。 public SendMail MailBean mail mail。 在設(shè)計(jì)中,利用 MySQL 數(shù)據(jù)庫(kù)及 JavaMail 技術(shù)解決了電子郵件存儲(chǔ)和操作的問題,該系統(tǒng)使用 James 郵件服務(wù)器作為郵件服務(wù)器使得在開發(fā)電子郵件收發(fā)模塊時(shí)不需要考慮太多的郵件收發(fā)底層問題。 優(yōu)先級(jí):正確性 易用性 視圖效果 通過(guò)對(duì)系統(tǒng)的進(jìn)行測(cè)試 7 結(jié)束語(yǔ) 總結(jié) 電子郵件系統(tǒng)是一個(gè)基于 Struts Spring 與 Hibernate 的系統(tǒng)。 測(cè)試范圍: 在需求中明確給出的各功能模塊。 測(cè)試環(huán)境 軟件測(cè)試環(huán)境是進(jìn)行軟件測(cè)試所必需的工作平臺(tái)和前提條件,包括硬件環(huán)境和軟件環(huán)境,硬件環(huán)境指進(jìn)行測(cè)試所必需的 服務(wù)器、客戶端、網(wǎng)絡(luò)連接設(shè)備,以及打印機(jī) /掃描儀等輔助硬件設(shè)備所構(gòu)成的環(huán)境;軟件環(huán)境則指被測(cè)軟件運(yùn)行時(shí)的操作系統(tǒng)、數(shù)據(jù)庫(kù)及其他應(yīng)用軟件等構(gòu)成的環(huán)境。 圖 527 查看電子郵件信息頁(yè)面 小結(jié) 本章主要介紹了電子郵件系統(tǒng)的關(guān)鍵部分的設(shè)計(jì)與實(shí)現(xiàn)過(guò)程。 圖 524 郵件發(fā)送成功頁(yè)面 用戶查看電子郵件的實(shí)現(xiàn) 用戶查看電子郵件具體實(shí)現(xiàn)如以下步驟: 1. 用戶進(jìn)入登錄成功首頁(yè)面點(diǎn)擊收信按鈕。 2. 用戶在系統(tǒng)登錄成功首頁(yè)面點(diǎn)擊寫信按鈕,系統(tǒng)將進(jìn)入寫信頁(yè)面。如果正確則將成功信息返回給修改密碼成功 頁(yè)面。 圖 519 密碼找回第二步頁(yè)面 6. 如果用戶選擇通過(guò)密碼提示問題 找回密碼,則將產(chǎn)生找回密碼 Action動(dòng)作。 圖 517 用戶注冊(cè)頁(yè)面 用戶找回密碼的實(shí)現(xiàn) 用戶找回密碼的具體的實(shí)現(xiàn)如以下步驟: 1. 用戶進(jìn)入系統(tǒng)登錄頁(yè)面。 8. 自動(dòng)登錄時(shí)用戶客戶端將 Cookie 發(fā)送給服務(wù)器端,服務(wù)器根據(jù) Cookie中的值判斷用戶是否能夠登錄。 用戶登錄郵件系統(tǒng)的實(shí)現(xiàn) 用戶登錄電子郵件系統(tǒng)的具體實(shí)現(xiàn)如以下步驟: 1. 用戶打開系統(tǒng)并進(jìn)入系統(tǒng)登錄首頁(yè)面( 頁(yè)面)。 圖 512 用戶查看電子郵件序列圖 與用戶查看電子郵件序列圖相對(duì)應(yīng)的協(xié)作圖如圖 513 所示。 4. 業(yè)務(wù)邏輯類根據(jù)數(shù)據(jù)訪問類返回的信息返回郵件列表信息。 5. 對(duì)于需要發(fā)送帶附件的電子郵件時(shí),電子郵件的附件需要先上傳到電子郵件服務(wù)器,然后從電子郵件服務(wù)器上加載附件到郵件中。但通過(guò)安全郵箱找回密碼密碼是通過(guò)系統(tǒng)隨機(jī)生成的六位的字母和數(shù)字的密碼。安全問題答案正確,則根據(jù)用戶提交的新密碼信息修改用戶登錄密碼。 2. 業(yè)務(wù)邏輯類訪問數(shù)據(jù)訪問類檢測(cè)用戶輸入信息 。 5. 數(shù)據(jù)庫(kù)訪問類訪問數(shù)據(jù)庫(kù)將用戶基本信息存入到數(shù)據(jù)庫(kù)中。如果身 份驗(yàn)證未通過(guò),重新登錄或退出。這樣業(yè)務(wù)邏輯層無(wú)需知道如何訪問數(shù)據(jù)庫(kù),只需要維護(hù)與數(shù)據(jù)訪問層之間的接口就能夠順利的進(jìn)行各種與數(shù)據(jù)庫(kù)有關(guān)的操作。三層之間的關(guān)系如圖 51 所示。對(duì)后期系統(tǒng)的開發(fā)提供了比較好的數(shù)據(jù)庫(kù)支持。這樣不僅提高了數(shù)據(jù)的訪問效率同時(shí)也使得表結(jié)構(gòu)變得異常簡(jiǎn)單有利于后期的維護(hù)和升級(jí)。 圖 41 實(shí)體關(guān)系 ER 圖 邏輯結(jié)構(gòu)設(shè)計(jì) 邏輯結(jié)構(gòu)設(shè)計(jì)的任務(wù)是將概念結(jié)構(gòu)設(shè)計(jì)階段設(shè)計(jì)好的 ER 圖轉(zhuǎn)化為對(duì)應(yīng)的關(guān)系模式,從而完成邏輯結(jié)構(gòu)設(shè)計(jì),為數(shù)據(jù)庫(kù)的實(shí)現(xiàn)作準(zhǔn)備。 概念結(jié)構(gòu)設(shè)計(jì) 概念結(jié)構(gòu)設(shè)計(jì)的任務(wù)是將數(shù)據(jù)庫(kù)需求分析得到的用戶數(shù)據(jù)需求抽象為信息結(jié)構(gòu),是整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)的關(guān)鍵。 3. 一個(gè)用戶登錄信息要對(duì)有一個(gè)用戶基本信息與之相對(duì)應(yīng)。以確保電子郵件系統(tǒng)用戶實(shí)時(shí)的發(fā)送電子郵件。用戶 也可以查看電子郵件以方便用戶查看電子郵件的具體內(nèi)容。 ( 2)注冊(cè)新用戶:用戶可以使用該系統(tǒng)注冊(cè)一個(gè)新的系統(tǒng)用戶。 ( 2)用戶對(duì)發(fā)送電子郵件的要求。信息系統(tǒng)中數(shù)據(jù)需求也是至關(guān)重要的,是系統(tǒng)功能實(shí)現(xiàn)的基礎(chǔ)。在設(shè)計(jì)時(shí)應(yīng)該力求做到高內(nèi)聚。 本系統(tǒng)作為典型的 Web 系統(tǒng)應(yīng)該盡可能的準(zhǔn)尋以下準(zhǔn)則,以確保系統(tǒng)軟件的質(zhì)量。 開發(fā)軟件計(jì)劃的提出與軟件消亡之間的過(guò)程中我們稱之為軟件的生存周期。很多郵件傳輸工具,如 outlook express、 fox mail 等,都遵守 SMTP 標(biāo)準(zhǔn)并用這個(gè)協(xié)議向郵件服務(wù)器發(fā)送郵件 [12]。 POP 郵局協(xié)議負(fù)責(zé)從郵件服務(wù)器中檢索電子郵件。郵件服務(wù)器按通訊協(xié)議可以劃分為兩種類型 SMTP 服務(wù)器:用于替用戶發(fā)送郵件和接收外面發(fā)送給本地用戶的郵件,它相當(dāng)于現(xiàn)實(shí)生活中郵件的郵件接收部門(可接收普通用戶投遞的郵件其它郵局投遞過(guò)來(lái)的郵件) POP3/IMAP 服務(wù)器:用于幫助用戶讀取 SMTP 服務(wù)器接收進(jìn)來(lái)的該用戶的郵件。這些服務(wù)主要是有 Macther 和 MailetAPI 實(shí)現(xiàn)的,這兩個(gè) API 提供了 Email 檢查和處理功能。 James 還是一個(gè)郵件應(yīng)用平臺(tái)。它是功能豐富的JavaEE 集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持6HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。 Spring 框架的功能可以用在任何 J2EE 服務(wù)器中,大多數(shù)功能也適用 于不受管理的環(huán)境。主要表現(xiàn)在如下幾個(gè)方面 [4]: ( 1) Interceptor 做一些攔截或初始的工作 當(dāng)外部的 ervletrequest 到來(lái)時(shí)初始到了 servlet 容器,傳遞給一個(gè)標(biāo)準(zhǔn)的過(guò)濾器鏈 Other filters。 第 4 章主要介紹:數(shù)據(jù)庫(kù)的設(shè)計(jì)與實(shí)現(xiàn)。 正是由于電子郵件的使用簡(jiǎn)易、投遞迅速、收費(fèi)低廉,易于保存、全球暢通無(wú)阻,使得電子郵件被廣泛地應(yīng)用,它使人們的交流方式得到了極大的改變。 本系統(tǒng)具有功能豐富、結(jié)構(gòu)清晰、運(yùn)行效率高、數(shù)據(jù)訪問效率高等優(yōu)異性能,后期易于維護(hù),可擴(kuò)展性行比較好。 本系統(tǒng)還存在以下幾個(gè)方面的工作尚需完善,即增加聯(lián)系人管理模塊,增強(qiáng)系統(tǒng)的穩(wěn)定性,增強(qiáng)系統(tǒng)的安全性。另外,電子郵件還可以進(jìn)行一對(duì)多的郵件傳遞,同一郵 件可以一次發(fā)送給許多人。 第 5 章主要介紹:系統(tǒng)核心功能模塊設(shè)計(jì)及實(shí)現(xiàn)。 ( 2)調(diào)用 FilterDispatecher 會(huì)去查找相應(yīng)的 ActionMapper 如果找到了相應(yīng)的 ActionMapper 它會(huì)將控制權(quán)限交給 ActionProxy, ActionProxy 將會(huì)通過(guò)ConfigurationManager 來(lái)查找配置 。 Spring 的核心要點(diǎn)是:支持不綁定到特定 J2EE 服務(wù)的可重用業(yè)務(wù)和數(shù)據(jù)訪問對(duì)象。 2. MySQL 數(shù)據(jù)庫(kù) MySQL 是一個(gè)快速的、多線程、多用戶和健壯的 SQL 數(shù)據(jù)庫(kù)服務(wù)器。 Apache 組織提供了一套Java API- mailet APIMailet API,可以根據(jù)自己的需要用 Java 語(yǔ)言編寫代碼來(lái)對(duì)郵件進(jìn)行個(gè)性化的處理。 James 支持標(biāo)準(zhǔn)的 協(xié)議( SMTP, POP3, IMAPJames 當(dāng)作一個(gè)通常的消息服務(wù)器或者為即時(shí)消息傳輸提供支持。當(dāng)前常用的電子郵件協(xié)議有 SMTP、 POP IMAP4,它們都隸屬于 TCP/IP 協(xié)議簇,默認(rèn)狀態(tài)下,分別通過(guò) TCP 端口 2 110 和 143 建立連接。它要求郵件服務(wù)器完成下面幾種任務(wù)之一:從郵件服務(wù)器中檢索郵件并從服務(wù)器中刪除這個(gè)郵件;從郵件服務(wù)器中檢索郵件但不刪除它;不檢索郵件,只是詢問是否有新郵件到達(dá)。 SMTP 協(xié)議規(guī)定了郵件信息的具體格式和郵件的管理方式。軟件生存周期是根據(jù)軟件所處的狀態(tài)、特征以及軟件開發(fā)活動(dòng)的目的、任務(wù)可以劃分若干階段 ,從這一思想出發(fā),軟件生存周期包括軟件定義,軟件開 發(fā)、軟件使用與維護(hù)三個(gè)部分 ,具體則可以得到軟件生存周期的六個(gè)步驟,即制定計(jì)劃、需求分析,軟件設(shè)計(jì)、程序編碼、測(cè)試及運(yùn)行維護(hù)。 1. 模 塊化:再設(shè)計(jì)系統(tǒng)的時(shí)候應(yīng)當(dāng)盡可能的將數(shù)據(jù)結(jié)構(gòu)和操作這些數(shù)據(jù)的方法緊密地結(jié)合在一起,使得系統(tǒng)能夠被分解成各個(gè)獨(dú)立的模塊。 根據(jù)分析,本系統(tǒng)的設(shè)計(jì)目標(biāo)是:設(shè)置一個(gè)登錄窗口供用戶登錄。功能性需求是系統(tǒng)需要實(shí)現(xiàn)的,提供給用戶使用的具體的功能;非功能性需求是為了滿足用戶對(duì)系統(tǒng)功能的需求,系統(tǒng)正常工作所應(yīng)當(dāng)具備的系統(tǒng)的特定特性,如性能、安全性、可用性、可擴(kuò)展性等等,二者互為影響。系統(tǒng)應(yīng)該能夠進(jìn)行簡(jiǎn)單的電子郵件的發(fā)送,同時(shí)還要能發(fā)送復(fù)雜一點(diǎn)的電子郵件例如帶有附件、郵件內(nèi)容為 HTML 格式的郵件 等。 ( 3)管理郵件信息:用戶可以通 過(guò)該系統(tǒng)查看和發(fā)送電子郵件。 性能需求分析 電子郵件系統(tǒng)主要的用戶群是普通用戶,所以在設(shè)計(jì)上必須遵循以下幾點(diǎn)準(zhǔn)則: 1. 易用性:電子郵件系統(tǒng)可以像使用留言電話一樣,在自己方便的時(shí)候處理記錄下來(lái)的請(qǐng)求,通過(guò)電子郵件可以方便地傳送文本信息、圖像文件、報(bào)表和計(jì)算機(jī)程序。 數(shù)據(jù)庫(kù)需求分析 郵件系統(tǒng)用于存入數(shù)據(jù)庫(kù)的信息只有用戶的基本信息和聯(lián)系人的基本信息,至于電子郵件的具體存儲(chǔ)位置則是由 Apache James 郵件服務(wù)器負(fù)責(zé)完成。 經(jīng)過(guò)對(duì)系統(tǒng)功能的數(shù)據(jù)分析和總結(jié),設(shè)計(jì)出了如下所示的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu): 用戶登錄信息:用戶賬號(hào)、用戶密碼、密碼加密算法、用戶是否是被禁用等。概念結(jié)構(gòu)設(shè)計(jì)的目標(biāo)是產(chǎn)生反 映信息需求的整體數(shù)據(jù)庫(kù)概念結(jié)構(gòu),即概念模式,描述概念結(jié)構(gòu)的工具是 ER 圖 [15]。本系統(tǒng)的數(shù)據(jù)庫(kù)使用的是 MySQL 數(shù)據(jù)庫(kù),建造的數(shù)據(jù)庫(kù)名稱為 。其中版本號(hào)是用來(lái)實(shí)現(xiàn)樂觀鎖的,有了樂觀鎖就可以有效的降低數(shù)據(jù)訪問出錯(cuò)的概率。 5 詳細(xì)設(shè)計(jì)與實(shí)現(xiàn) 系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì) 電子郵件系統(tǒng)的特點(diǎn)是信息處理量比較大,各個(gè)環(huán)節(jié)要求連接性能強(qiáng)。 圖 51 系統(tǒng)架構(gòu)圖 在三層架構(gòu)中,各個(gè)層次的功能描述如下: 1. 表現(xiàn)層:表現(xiàn)層主要完成響應(yīng)客戶操作和向數(shù)據(jù)訪問層發(fā)送請(qǐng)求。 系統(tǒng)模塊設(shè)計(jì) 電子郵件系統(tǒng)的主要使用人員是普通用戶,通過(guò)對(duì)系統(tǒng)需求的分析可得用戶與系統(tǒng)之間的交互行為有用戶登錄系統(tǒng)、用戶找回密碼、注冊(cè)新用戶 、用戶修改個(gè)人信息、查看電子郵件、刪除電子郵件、發(fā)送電子郵件、查找電子郵件和通過(guò)高級(jí)查找精確的查找電子郵件。否則繼續(xù)進(jìn)行下一步操作。并返回成功信息給業(yè)務(wù)邏輯類。數(shù)據(jù)訪問類通過(guò)訪問數(shù)據(jù)庫(kù)檢測(cè)用戶輸入的信息是否有效。 7. 安全 問題答案錯(cuò)誤,則返回錯(cuò)誤信息給業(yè)務(wù)邏輯類,業(yè)務(wù)邏輯類將顯示錯(cuò)誤頁(yè)面給用戶。通過(guò)安全問題找回密碼序列圖如圖 58 所示。 根據(jù)基本流程,用戶發(fā)送電子郵件序列圖如圖 510 所示。 5. 向用戶發(fā)送郵件列表信息頁(yè)面。 圖 513 用戶查看電子郵件協(xié)作圖 系統(tǒng)模塊的實(shí)現(xiàn) 電子郵件系統(tǒng)的具體實(shí)現(xiàn)是采用 Struts2 + Spring + Hibernate 來(lái)實(shí)現(xiàn)的。在系統(tǒng)登錄頁(yè)面使用了 jQuery 對(duì)用戶輸入的數(shù)據(jù)有效行進(jìn)行驗(yàn)證,當(dāng)用戶輸入的信息無(wú)效時(shí),會(huì)給用戶友好的錯(cuò)誤提示信息,當(dāng)用戶輸入的數(shù)據(jù)有效時(shí)才能提交。 9. 如果用戶客戶端瀏覽器 Cookie 中已有用戶名則在服務(wù)器端產(chǎn)生一個(gè)Session 值,并返回給客戶端登錄成功頁(yè)面。 2. 用戶點(diǎn)擊登錄頁(yè)面的找回密碼按 鈕。密碼找回 Action 會(huì)根據(jù)第一步用戶找回密碼提交的郵箱名稱查詢用戶安全問題。 10. 如果用戶選擇通過(guò)安全郵箱找回密碼方式,則產(chǎn)生通過(guò)郵箱找回密碼Action 動(dòng)作。寫信頁(yè)面如圖 523 所示。 2. 當(dāng)用戶點(diǎn)擊收信按鈕之后會(huì)觸發(fā) 動(dòng)作,該動(dòng)作會(huì)調(diào)用UserReceiveMailAction 類中的 execute 方法。在設(shè)計(jì)和實(shí)現(xiàn)的過(guò)程中參考了大量的郵件方面的資料。 軟件由數(shù)據(jù)和程序兩個(gè)最基本的要素組成,對(duì)數(shù)據(jù)進(jìn)行軟件測(cè)試,就是在檢查用戶輸入的信息、返回結(jié)果以及中間計(jì)算結(jié)果是否正確。 技術(shù): 通過(guò)設(shè)計(jì)測(cè)試用例,利
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1