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

正文內(nèi)容

基于java的郵件系統(tǒng)設(shè)計畢業(yè)論文(編輯修改稿)

2025-07-20 15:07 本頁面
 

【文章內(nèi)容簡介】 庫來實現(xiàn)對郵件管理和收發(fā)。 WebMail系統(tǒng)架構(gòu)圖 Web架構(gòu)分析為了給用戶提供一個美好的界面,本次開發(fā)現(xiàn)在了JSF作為表現(xiàn)層技術(shù),使用基于JSF的Primefaces進行界面的開發(fā)。在持久化層選擇了JPA標準的Hibernate實現(xiàn),為了更好結(jié)合這兩者選擇Seam作為上下文的管理者;使用Seam開發(fā)有很多好處比如簡化分層,提高了開發(fā)速度等。+Seam+JPA的架構(gòu)圖。 項目框架的架構(gòu)圖 項目的分層架構(gòu)圖,在Seam開發(fā)模式下,一般分為頁面,Action,Service三層,頁面負責(zé)界面的展示和請求,Action負責(zé)業(yè)務(wù)邏輯的處理,而Service層負責(zé)對數(shù)據(jù)庫的訪問。Seam主要充當資源的管理者,它把一切充當組件來進行管理。使用JSF+Seam+JPA來開發(fā)相比SSH開發(fā)起來更加簡單。 4 系統(tǒng)設(shè)計 總體設(shè)計本系統(tǒng)是由Web服務(wù)器、數(shù)據(jù)庫服務(wù)器、郵件服務(wù)器和瀏覽器客戶端組成的多層Web計算機服務(wù)系統(tǒng),采用JSF+Seam3+JPA架構(gòu),具有先進性、靈活性、可擴展性等特點。 模塊設(shè)計通過采用面向?qū)ο蟮乃枷雽ebmail系統(tǒng)進行分析,以及使用UML工具,分析出相關(guān)的重要概念,得出以下模塊設(shè)計圖。 總體模塊設(shè)計圖系統(tǒng)的各功能模塊如需求分析所描述。 數(shù)據(jù)庫的概念結(jié)構(gòu)模型設(shè)計 ER圖 概念設(shè)計以反映現(xiàn)實世界中的實體、屬性和它們之間的關(guān)系等的原始數(shù)據(jù)形式。通過系統(tǒng)分析,得出系統(tǒng)的總ER圖。 系統(tǒng)總ER圖 關(guān)系模式(有下劃線的代表主鍵、有波浪線代表外鍵) 通過理清各實體的屬性和聯(lián)系,得出以下關(guān)系模式:(1) 用戶表:(用戶ID,描述名,密碼,主題,是否是管理員)(2) 聯(lián)系人表:(聯(lián)系人ID,所屬用戶ID,名稱,,電話,賬號,地址,備注)(3) 郵箱:(郵箱ID,所屬用戶ID,登錄名,密碼,POP服務(wù)器,SMTP服務(wù)器,描述名,郵箱域名后綴)(4) 郵件表:(郵件ID,所屬郵箱ID,郵件信息ID,發(fā)件人,收件人,抄送,密送,主題,所處狀態(tài),發(fā)送時間,是否已讀,是否刪除,是否重要,是否包含附件,保存路徑) (5) 附件表:(附件ID,所屬郵件ID,附件名,保存路徑,大小,類型圖標) 數(shù)據(jù)庫表通過以上的關(guān)系模式,可以設(shè)計出相應(yīng)的數(shù)據(jù)庫表,如下: 用戶表:user字段字段大小字段描述主鍵/外鍵備注IDvarchar50用戶ID主鍵not nullPASSWORDvarchar50密碼not nullNAMEvarchar50描述名THEMEvarchar30系統(tǒng)主題not nullISADMINtinyint1是否是管理員 聯(lián)系人表:person字段類型大小字段描述主鍵/外鍵備注idint11聯(lián)系人ID主鍵not nulluseridvarchar100所屬用戶ID外鍵not nullnamevarchar50名稱not nullvarchar50not nullphonevarchar15電話qqvarchar15賬號addressvarchar255地址remarkvarchar50備注 郵箱表:mailbox字段類型大小字段描述主鍵/外鍵備注IDint11郵箱ID主鍵not nullUSERIDvarchar50所屬用戶ID外鍵not nullLOGIN_NAMEvarchar30登錄名not nullPASSWORDvarchar30密碼not nullPOP3_SERVERvarchar30POP服務(wù)器not nullSMTP_SERVERvarchar30SMTP服務(wù)器not nullEMAILvarchar20郵箱域名后綴dNamevarchar30描述名:attachment字段類型大小字段描述主鍵/外鍵備注IDint11附件ID主鍵not nullMAILIDvarchar50所屬郵件ID外鍵not nullNAMEvarchar50附件名not nullPATHvarchar50保存路徑not nullSIZEvarchar100大小not nullICONvarchar30類型圖標not null 郵件表:mail字段類型大小字段描述主鍵/外鍵備注IDvarchar100郵件ID主鍵not null_MAILBOXIDint11所屬郵箱ID外鍵not null_MSGIDvarchar200郵件信息IDnot null_FROMvarchar100發(fā)件人not null_TOvarchar255收件人_CCvarchar255抄送_BCCvarchar255密送_SUBJECTvarchar255主題_STATEint11所處狀態(tài)_SENDDATEvarchar50發(fā)送時間not null_ISREADtinyint1是否已讀_ISDELtinyint1是否刪除_isPmortanttinyint1是否重要_ISHATTACHtinyint1是否包含附件PATHvarchar255保存路徑not null 詳細設(shè)計本系統(tǒng)選取了比較新型的JSF+Seam+JPA作為開發(fā)框架,所以開發(fā)系統(tǒng)的思想和流程跟SSH架構(gòu)有很大的不同?;贘SF+Seam+JPA框架的開發(fā)是從組件、事件、后臺bean以及它們之間的交互來進行思考,不是基于請求、響應(yīng)和標記來考慮問題,不再重視分層的細節(jié),注重基于頁面響應(yīng)的事件來處理業(yè)務(wù)邏輯。按照這種開發(fā)的思想,把系統(tǒng)分層頁面層、Action層、Service層。頁面層主要是實現(xiàn)UI界面、把頁面組件的事件和相關(guān)的Action綁定,一般一個頁面都會對于一個Action來響應(yīng)這個頁面的事件,從實現(xiàn)對業(yè)務(wù)邏輯操作。Service層主要是為Action服務(wù)讓Action 調(diào)用來訪問數(shù)據(jù),一般一個Action類都會對于一個Service類。在項目中除了要設(shè)計這些響應(yīng)事件、訪問數(shù)據(jù)庫的類、實體類(和數(shù)據(jù)庫表對應(yīng)的類),還設(shè)計一些工具類、保存用戶登錄信息類供整個項目模塊使用。 項目共用類的設(shè)計這些類,因為這些類提供特定功能實現(xiàn),供項目各模塊的類使用。下面介紹幾個比較這樣類型的類的相關(guān)設(shè)計,其中包括FileDownloader類、FileUtil類、MailServices類、ParseMimeMessage類,AccessConfig類。 AccessConfig類,這個類主要是設(shè)計類存儲登錄用戶的相關(guān)信息,當用戶成功登錄它就被創(chuàng)建,并且存儲著用戶的信息,包括用戶的姓名、密碼、所有的有服務(wù)器以及用戶各個文件夾的郵件的數(shù)量等信息。這個類在創(chuàng)建之后就會被保存在session范圍里,共整個會話使用。 FileDownloader類,用因為郵件系統(tǒng)中涉及到文件的下載問題,所以專門設(shè)計這個類來處理文件的下載問題。 FileUtil類,因為系統(tǒng)設(shè)計要為每個用戶創(chuàng)建文件夾來保存用戶的信息,報告郵件備份、附件等,所以在整個項目中會遇到很多文件夾、和文件的操作,所以設(shè)計FileUtil類。這個類的命名跟FileDownloader類都有File但它們處理領(lǐng)域不一樣,F(xiàn)ileUtil主要對硬盤上的文件的操作,包括文件夾、文件的創(chuàng)建、刪除、復(fù)制等操作。 FileUtil類的類圖 MailServices類,一個WebMail郵件系統(tǒng)主要目的就是為了收發(fā)郵件,經(jīng)常要跟不同郵件服務(wù)器連接讀取很發(fā)送郵件。因此,MailServices類,來處理跟郵件服務(wù)相關(guān)的操作。包括創(chuàng)建與不同服務(wù)器的會話,獲取服務(wù)器的文件夾、測試與服務(wù)器連接是否成功。 MailServices類的類圖 ParseMimeMessage類,當收到一封郵件時要想把它展現(xiàn)給出來給用戶瀏覽,那首先就要對郵件進行解析。解析郵件是一個復(fù)雜的過程,所以設(shè)計了ParseMimeMessage類來解析郵件,使用ParseMimeMessage類可以拿到郵件的各種信息,其中包括郵件嵌入的圖片、附件這些復(fù)雜的信息。 ParseMimeMessage類的類圖 登錄注冊設(shè)計 頁面設(shè)計。這頁面提供登錄界面和對話框式的注冊界面。 類的設(shè)計設(shè)計兩個Action層的類, LoginAction類、RegisterAction類這個兩類主要負責(zé)響應(yīng)登錄和注冊的事件,還設(shè)計而來兩個Service層的類,LoginService類、RegiSterservice類提供對數(shù)據(jù)庫的訪問。、 登錄功能序列圖 注冊功能序列圖 頁面設(shè)計這個模塊實現(xiàn)的功能比較多,包括編輯,解析,發(fā)送、回復(fù)、轉(zhuǎn)發(fā)、接收郵件。其中因為回復(fù)和轉(zhuǎn)發(fā)的業(yè)務(wù)上和發(fā)送有點小小不一樣,所以本模塊分別給回復(fù)、轉(zhuǎn)發(fā)、普通發(fā)送的功能設(shè)計不同的編輯頁面,不過只是微小的差別,、。 類的設(shè)計、設(shè)計RecevieEmailAction類處理收信事件。在Service層同樣設(shè)計了兩個相對應(yīng)用的SendMailAction和RecevieEmailService類處理相關(guān)的數(shù)據(jù)庫訪問。、其中回復(fù)跟轉(zhuǎn)發(fā)的發(fā)送跟普通的發(fā)送是一樣的,只是在轉(zhuǎn)到的編輯頁面不一樣而而已。 發(fā)送功能序列圖 郵件管理模塊的設(shè)計 頁面的設(shè)計為了方便郵件的管理設(shè)計了兩種頁面,;。在這個兩個頁面都提供相關(guān)按鈕或鏈接來實現(xiàn)對郵件的包括查看郵件,刪除郵件、標記郵件、移動郵件等等 類的設(shè)計跟其他模塊一樣,在Action層設(shè)計一個ShowMailAction類來處理頁面響應(yīng)的事件和相關(guān)的業(yè)務(wù)邏輯。在Serveice層設(shè)計一個ShowMailServeice來實現(xiàn)對數(shù)據(jù)庫的操作。在對郵件的刪除不是真正把郵件刪除掉,只是改變郵件的標記,普通的刪除是改變郵件存儲狀態(tài)state把它設(shè)置為4,徹底刪除是設(shè)置isdel為true,其中徹底刪除還對應(yīng)的郵件備份、附件真正的從硬盤和數(shù)據(jù)庫刪除掉,到在郵件表中這郵件還是沒有刪除,這樣是為使郵件系統(tǒng)不會接收重復(fù)接收一樣的郵件。對郵件的移動才、標記操作也相應(yīng)的改變郵件在數(shù)據(jù)庫的State、isread、isimportant這些字段。 賬號管理模塊設(shè)計 頁面設(shè)計。 類的設(shè)計跟其他模塊一樣本模塊設(shè)計了ManageAction類來處理頁面響應(yīng)的事件,設(shè)計ManageService類來訪問數(shù)據(jù)庫。本模塊的主要操作大部分是對數(shù)據(jù)庫的增刪改查,實現(xiàn)起來比較簡單所以就簡單介紹,這里就不畫相關(guān)序列圖。 5 系統(tǒng)實現(xiàn)本系統(tǒng)采用了JSF+Seam+JPA的新型架構(gòu)作為開發(fā)框架,選用了Facelets作為JSF的顯示技術(shù),JSF的 Primefaces提供的實現(xiàn)做為富有界面的開發(fā)類庫。JSF負責(zé)頁面后臺數(shù)據(jù)交換和綁定,JPA負責(zé)與數(shù)據(jù)交互,Seam主要作為上下文的管理者來管理項目中JavaBean,使它們黏合在一起。使用這個框架組合進行開發(fā)主要為了簡化項目開發(fā),減少對各種請求、響應(yīng)處理,注重對系統(tǒng)核心功能的開發(fā)。這次要開發(fā)是一個WebMail郵件系統(tǒng),最核心、最麻煩的就是如何收發(fā)郵件、解析郵件、可視化編輯郵件。所以下面將把重點放在如何解決這些問題和實現(xiàn)這些功能,其他知識簡單介紹。 系統(tǒng)環(huán)境要求 基本要求處理器PⅣ,內(nèi)存容量256M以上,推薦512M以上;80G的外存磁盤,把數(shù)據(jù)定時備份到不同的硬盤;局域網(wǎng)、Internet網(wǎng)、移動設(shè)備。 硬件要求服務(wù)器 CPU PⅣ,內(nèi)存:512M以上??蛻魴C CPU 200MMX以上,內(nèi)存:32M以上。 軟件要求目前,市面上應(yīng)用開發(fā)的語言和軟件很多,流行的也有數(shù)十種。本系統(tǒng)經(jīng)過比較并結(jié)合自身的特點,不過因為有用到Seam這個框架,為了方便開發(fā)需要在eclipse上安裝jboss tool插件。,同時使用Mysql的圖形界面工具Navicat來對數(shù)據(jù)庫進行操作;服務(wù)器方面為方便部署Seam應(yīng)用選擇了jboss as 。 環(huán)境的搭建 下載相關(guān)的依賴包、(因為項目中有使用到切換主題的功能,所以還要下載一下Primefaces相關(guān)的主題包)、。其他jar包因為項目使用Jboss服務(wù)器,因為jboss是一個標準的J2EE容器,本身就帶有這些相關(guān)jar。 環(huán)境的配置 配置Jboss as7 的JNDI數(shù)據(jù)源打開解壓好的 Jboss as7 目錄 \modules\ 在這里目錄下建文件夾mysql\main\ 在main下, ,:?xml version= encoding=UTF8? module xmlns=urn:jboss:module: name= resources
點擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1