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

正文內(nèi)容

畢業(yè)設(shè)計(jì)-簡(jiǎn)易電子郵件系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(編輯修改稿)

2025-01-08 18:19 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 Controller 改變了 Models 的數(shù)據(jù)或者屬性,所有依賴的 View 都會(huì) 自動(dòng)更新。類似的,只要 Controller 改變了 View, View會(huì)從潛在的 Model 中獲取數(shù)據(jù)來刷新自己。 MVC 架構(gòu)是一種架構(gòu),其實(shí)需要其他模式協(xié)作完成。而 Struts 只實(shí)現(xiàn)了 MVC的 View 和 Controller 兩個(gè)部分, Model 部分需要開發(fā)者自己來實(shí)現(xiàn), Struts2 在整合了 Struts 和 webwork 后,終于徹底實(shí)現(xiàn)了 MVC 的架構(gòu)。 模型 (Model):就是業(yè)務(wù)流程 /狀態(tài)的處理以及業(yè)務(wù)規(guī)則的制定。業(yè)務(wù)流程的處理過程對(duì)其它層來說是黑箱操作,模型接受視圖請(qǐng)求的數(shù)據(jù),然后返回最終的處理結(jié)果。業(yè)務(wù)模型的 設(shè)計(jì)可以說是 MVC 最主要的核心。 MVC 設(shè)計(jì)模式告訴我們,吉林建筑 大學(xué) 畢業(yè)設(shè)計(jì) (論文 ) 5 把應(yīng)用的模型按一定的規(guī)則抽取出來,抽取的層次很重要,這也是判斷開發(fā)人員是否優(yōu)秀的設(shè)計(jì)依據(jù)。但 MVC 并沒有提供模型的設(shè)計(jì)方法,而只是告訴你應(yīng)該組織管理這些模型,以便于模型的重構(gòu)和提高重用性。我們可以用對(duì)象編程來做比喻, MVC 定義了一個(gè)頂級(jí)類,告訴它的子類只能做這些,但沒法限制只能做這些。業(yè)務(wù)模型還有一個(gè)很重要的模型那就是數(shù)據(jù)模型。數(shù)據(jù)模型主要指實(shí)體對(duì)象的數(shù)據(jù)保存。 視圖 (View):代表用戶交互界面。對(duì)于 Web 應(yīng)用來說,可以概括為 HTML 界面,但也有可 能為 XHTML、 XML 和 Applet。由于應(yīng)用的復(fù)雜性和規(guī)模性,一個(gè)應(yīng)用可能有很多不同的視圖, MVC 設(shè)計(jì)模式對(duì)于視圖的處理,僅限于視圖上用戶的請(qǐng)求以及數(shù)據(jù)的采集和處理,而不包括在視圖上的業(yè)務(wù)流程的處理。因?yàn)闃I(yè)務(wù)流程的處理交予模型 (Model)處理。 控制 (Controller): 可以理解為從用戶接收請(qǐng)求 , 將模型與視圖匹配在一起,共同完成用戶的請(qǐng)求。劃分控制層的作用也很明顯,它清楚地告訴你,它就是一個(gè)分發(fā)器,選擇什么樣的模型,選擇什么樣的視圖,可以完成什么樣的用戶請(qǐng)求??刂茖硬⒉蛔鋈魏蔚臄?shù)據(jù)處理。 模型、 視圖與控制器的分離,使得一個(gè)模型可以具有多個(gè)顯示視圖。如果用戶通過某個(gè)視圖的控制器改變了模型的數(shù)據(jù),所有其它依賴于這些數(shù)據(jù)的視圖都應(yīng)反映到這些變化。因此,無論何時(shí)發(fā)生了何種數(shù)據(jù)變化,控制器都會(huì)將變化通知所有的視圖,導(dǎo)致顯示的更新。這實(shí)際上是一種模型的變化 傳播機(jī)制。模型、視圖、控制器三者之間的關(guān)系和各自的主要功能 [3],如圖 21 所示。 圖 21 MVC 組件類型的關(guān)系和功能圖 吉林建筑 大學(xué) 畢業(yè)設(shè)計(jì) (論文 ) 6 Struts2 框架技術(shù) Struts 框架的核心是一個(gè)靈活的控制層,它基于以下標(biāo)準(zhǔn)技術(shù),如: Java Servlet、 JavaBean、資源綁定、 XML 和各種 Jakarta Commons 包。 Struts2 是在另一個(gè)有名的框架 WebWork基礎(chǔ)上發(fā)展起來的。 Struts2 框架是當(dāng)前 Web 開發(fā)中最為流行的設(shè)計(jì)和開發(fā)框架。借助于 Struts2 框架,開發(fā)人員可以把更多的精力集中在如何解決實(shí)際業(yè)務(wù)處理上,無需在頁面和業(yè)務(wù)代碼之間的處理上花費(fèi)很多時(shí)間。 Struts2 開發(fā)框架遵循 MVC 設(shè)計(jì)模式 ,這樣可以將整個(gè)工程分為 3 個(gè)相對(duì)獨(dú)立而又能協(xié)同工作的組成部分(包括模型、視圖、控制器),開發(fā)人員可以從負(fù)責(zé)的頁面代碼、業(yè)務(wù)代碼和控制流程中具體分工 [4]。 1) 核心控制器: FilterDispatcher FilterDispatcher 是 Struts2框架的核心控制器,該控制器作為一個(gè) Filter運(yùn)行在Web 應(yīng)用中,它負(fù)責(zé)攔截所有的用戶請(qǐng)求,當(dāng)用戶請(qǐng)求到達(dá)時(shí),該 Filter 會(huì)過濾用戶請(qǐng)求。如果用戶請(qǐng)求以 action 結(jié)尾,該請(qǐng)求將被轉(zhuǎn)入 Struts2 框架處理。Struts2 框架獲得了 *.action 請(qǐng)求后,將 根據(jù) *.action 請(qǐng)求的前面部分決定調(diào)用哪個(gè)業(yè)務(wù)邏輯組件,例如,對(duì)于 請(qǐng)求, Struts2 調(diào)用名為 login 的 Action 來處理該請(qǐng)求。 Struts2應(yīng)用中的 Action都被定義在 ,在該文件中定義 Action時(shí),定義了該 Action 的 name 屬性和 class 屬性,其中 name 屬性決定了該 Action處理哪個(gè)用戶請(qǐng)求,而 class屬性決定了該 Action的實(shí)現(xiàn)類。 Struts2用于處理用戶請(qǐng)求的 Action實(shí)例,并不是用戶實(shí)現(xiàn)的業(yè)務(wù)控制器,而是 Action代 理 。因?yàn)橛脩魧?shí)現(xiàn)的業(yè)務(wù)控制器并沒有與 Servlet API耦合,顯然無法處理用戶請(qǐng)求。而 Struts2 框架提供了系列攔截器,該系列攔截器負(fù)責(zé)將 HttpServletRequest 請(qǐng)求中的請(qǐng)求參數(shù)解析出來,傳入到 Action 中,并回調(diào) Action 的 execute 方法來處理用戶請(qǐng)求。 用戶實(shí)現(xiàn)的 Action 類僅僅是 Struts2 的 Action 代理的代理目標(biāo)。用戶實(shí)現(xiàn)的業(yè)務(wù)控制器( Action)則包含了對(duì)用戶請(qǐng)求的處理。用戶的請(qǐng)求數(shù)據(jù)包含在HttpServletRequest對(duì)象里,而用戶的 Action類無需訪問 HttpServletRequest對(duì)象。攔截器負(fù)責(zé)將 HttpServletRequest 里的請(qǐng)求數(shù)據(jù)解析出來,并傳給業(yè)務(wù)邏輯組件Action 實(shí)例。 2) 業(yè)務(wù)控制器 業(yè)務(wù)控制器組件就是用戶實(shí)現(xiàn) Action 類的實(shí)例, Action 類里通常包含了一個(gè)execute 方法,該方法返回一個(gè)字符串 ; 該字符串就是一個(gè)邏輯視圖名,當(dāng)業(yè)務(wù)控制器處理完用戶請(qǐng)求后,根據(jù)處理結(jié)果不同, execute 方法返回不同字符串 。每個(gè)字符串對(duì)應(yīng)一個(gè)視圖名。 吉林建筑 大學(xué) 畢業(yè)設(shè)計(jì) (論文 ) 7 程序員開發(fā)出系統(tǒng)所需要的業(yè)務(wù)控制器后,還需要配置 Struts2 的 Action,即需要配置 Action 的如下三個(gè)部分定義: 所處理的 URL。 組件所對(duì)應(yīng)的實(shí)現(xiàn)類。 里包含的邏輯視圖和物理資源之間的對(duì)應(yīng)關(guān)系。 每個(gè) Action 都要處理一個(gè)用戶請(qǐng)求,而用戶請(qǐng)求總是包含了指定 URL。當(dāng)Filter Dispatcher 攔截到用戶請(qǐng)求后,根據(jù)請(qǐng)求的 URL 和 Action 處理 URL 之間的對(duì)應(yīng)關(guān)系來處理轉(zhuǎn)發(fā)。 3) Struts2 的模型組件 實(shí)際上,模型組件已經(jīng)超出了 MVC 框架的覆蓋范圍。對(duì)于 Struts 2 框架而言,通常沒有為模型組件的實(shí)現(xiàn)提供太多的幫助。 Java EE 應(yīng)用里的模型組件,通常指系統(tǒng)的業(yè)務(wù)邏輯組件。而隱藏在系統(tǒng)的業(yè)務(wù)邏輯組件下面的,可能還包含了 DAO、領(lǐng)域?qū)ο蟮冉M件。 通常, MVC 框架里的業(yè)務(wù)控制器會(huì)調(diào)用模型組件的方法來處理用戶請(qǐng)求。也就是說,業(yè)務(wù)邏輯控制器不會(huì)對(duì)用戶請(qǐng)求進(jìn)行任何實(shí)際處理,用戶請(qǐng)求最終由模型組件負(fù)責(zé)處理。業(yè)務(wù)控制器只是中間負(fù)責(zé)調(diào)度的調(diào)度器,這也是稱 Action 為控制器的原因。 4) Struts 2 的視圖組件 Struts 2 已經(jīng)改變了 Struts1 只能使用 JSP 作為視圖技術(shù)的現(xiàn)狀, Struts 2 允許使用其他的模板技術(shù),如 FreeMarker、 Velocity 作為視圖技術(shù)。 當(dāng) Struts 2 的控制器返回邏輯視圖名時(shí),邏輯視圖并未與任何的視圖技術(shù)關(guān)聯(lián),僅僅是返回一個(gè)字符串,該字符串作為邏輯視圖名 [5]。 當(dāng)我們?cè)? 文件中配置 Action時(shí),不僅需要指定 Action的 name 屬性和 class 屬性,還要為 Action 元素指定系列 result 子元素,每個(gè) result 子元素定義一個(gè)邏輯視圖和物理視圖之間的映射。前面所介紹的應(yīng)用都使用了 JSP 技術(shù)作為視圖,故配置 result 子元素時(shí)沒有指定 type 屬性,默認(rèn)使用 JSP 作為視圖資源。 Struts2 的工作流程如圖 22 所示, 顯示了這些組件是如何工作的。 吉林建筑 大學(xué) 畢業(yè)設(shè)計(jì) (論文 ) 8 圖 22 Struts2 工作流程圖 本章小結(jié) 本章主要是完整的介紹一下本系統(tǒng)開發(fā)的相關(guān)工具與技術(shù),工具: MyEclipse 、 SQL2021。技術(shù): B/S 體系架構(gòu)、 MVC 理論、 Struts2 技術(shù)。并將這些開發(fā)工具的特點(diǎn)做了一個(gè)較為詳細(xì)的描述 ,以便在系統(tǒng)開發(fā)時(shí)能夠利用它們所具有的特性來開發(fā)系統(tǒng),提高系統(tǒng)開發(fā)的效率。此 郵件管理系統(tǒng)頁面組織和控制流程采用基于 MVC 設(shè)計(jì)模式 的 Struts2 開發(fā)框架。整個(gè)系統(tǒng)分為前臺(tái)展示、業(yè)務(wù)流程控制和后臺(tái)開發(fā)三個(gè)獨(dú)立的部分。在視圖層,使用了 Struts2 的標(biāo)簽和 html 共同完成JSP 頁面;業(yè)務(wù)流程和控制轉(zhuǎn)發(fā)采用 Struts2 框架中的控制器部分進(jìn)行控制。 吉林建筑 大學(xué) 畢業(yè)設(shè)計(jì) (論文 ) 9 第 3 章 系統(tǒng)需求分析 用戶需求 用戶端特性 本系統(tǒng)將用戶分為兩種類型,管理員和用戶。管理員管理主要包括管理用戶信息、刪除用戶等;用戶管理主要包括用戶個(gè)人信息的管理、個(gè)人郵箱的管理等。 系統(tǒng)功能需求 1. 用戶管理 :包括管理員和普通用戶兩種用戶的信息管理。 1) 用戶 登錄:對(duì)用戶登錄的用戶名密碼與數(shù)據(jù)庫中的信息進(jìn)行驗(yàn)證。登錄成功后可以修改個(gè)人密碼,管理員還可以管理用戶信息。 2. 郵件收發(fā):包括寫郵件、發(fā)送郵件、接收郵件。 1) 寫郵件:包含發(fā)送的主題,郵件文本內(nèi)容,并可以添加附件。 2) 發(fā)送郵件:選擇發(fā)送方式,如發(fā)送或保存;對(duì)非法郵件進(jìn)行攔截。 3) 接收郵件:獲取新郵件,對(duì)新郵件進(jìn)行分類。 3. 郵箱管理:收件箱、草稿箱、發(fā)件箱、垃圾箱。 1) 收件箱:查看郵件,下載郵件的附件,刪除無用的郵件。 2) 草稿箱:可以對(duì)保存的郵件進(jìn)行查看和刪除。 3) 發(fā)件箱:可以查看曾發(fā)送的郵件,刪除記錄。 4) 垃圾箱:可以選擇徹底 刪除垃圾郵件,或者還原郵件。 4. 通訊錄模塊:包括建立通訊錄、查看通訊錄和刪除通訊錄。 1) 新建通訊錄:包括添加聯(lián)系人的基本信息。 2) 查看通訊錄:對(duì)聯(lián)系人管理操作,如刪除指定聯(lián)系人。 3) 群發(fā)郵件:通過單擊“選擇通訊錄”可以對(duì)指定聯(lián)系人群發(fā)郵件。 運(yùn)行環(huán)境需求 用戶對(duì)系統(tǒng)運(yùn)行環(huán)境需求包括軟件、硬件 等方面。 1)系統(tǒng)軟件要求: 操作系統(tǒng): Windows xp/vista/win7 開發(fā)軟件: MyEclipse 數(shù)據(jù)庫: SQL2021 2)系統(tǒng)硬件要求: 吉林建筑 大學(xué) 畢業(yè)設(shè)計(jì) (論文 ) 10 處理器: P4 以上 內(nèi)存: 512MB 以上 硬盤空間: 10G 以上 3)開發(fā)要求: 開發(fā)工具: MyEclipse 編程語言: Java 工具配置: JDK 數(shù)據(jù)描述 數(shù)據(jù)流程圖是一種圖形化技術(shù),是描繪數(shù)據(jù)在軟件中流動(dòng)和被處理的邏輯過程 [6]。以下是本系統(tǒng)按照功能來劃分的數(shù)據(jù)流圖的頂層圖 ,如圖 31 所示 。 圖 31 系統(tǒng)的頂層數(shù)據(jù)流圖 頂層數(shù)據(jù)流圖僅僅是從總體上反映了系統(tǒng)的信息聯(lián)系,按照結(jié)構(gòu)化分析方法,自頂向下、逐層分解,對(duì)頂層圖進(jìn)行細(xì)化。細(xì)化進(jìn)行到數(shù)據(jù)流圖中的每一個(gè)數(shù)據(jù)處理成為一個(gè)很容易理解的單一功能, 且這個(gè)單一功能可以通過簡(jiǎn)單的邏輯表達(dá)式在數(shù)據(jù)字典中予以說明。 數(shù)據(jù)字典 數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合,也就是對(duì)數(shù)據(jù)流圖中包含的所有元素的定義的集合。數(shù)據(jù)字典最主要的用途就是供人查閱對(duì)不了解的條目的解釋,數(shù)據(jù)字典的作用也正是在軟件分析和設(shè)計(jì)的過程中給人提供關(guān)于數(shù)據(jù)的描述信息 [7]。 數(shù)據(jù)流程圖和數(shù)據(jù)字典共同構(gòu)成系統(tǒng)的邏輯模型,沒有數(shù)據(jù)字典,數(shù)據(jù)流圖就不嚴(yán)格。所以為了精確定義每一個(gè)元素,需要數(shù)據(jù)字典來將系統(tǒng)規(guī)格說明。 系統(tǒng)中的數(shù)據(jù)字典如 表 31 至表 37 所示 。 吉林建筑 大學(xué) 畢業(yè)設(shè)計(jì) (論文 ) 11 表 31 用戶登錄 數(shù) 據(jù) 流 系統(tǒng)名:郵件管理系統(tǒng) 條目名:登錄信息 別名: f1 來源: 用戶 去處: user 表 數(shù)據(jù)流結(jié)構(gòu):用戶名,密碼,登錄身份 簡(jiǎn)要說明:輸入用戶登錄信息,進(jìn)行身份驗(yàn)證 。 表 32 修改密碼 數(shù) 據(jù) 流 系統(tǒng)名:郵件管理系統(tǒng) 條目名:修改密碼信息 別名: f2 來源: 用戶 去處: user 表 數(shù)據(jù)流結(jié)構(gòu):原密碼,新密碼,確認(rèn)新密碼 簡(jiǎn)要說明:輸入用戶原 密碼并兩次輸入相同的新密碼,驗(yàn)證正確后修改數(shù)據(jù)庫。 表 33 添加聯(lián)系人 數(shù) 據(jù) 流 系統(tǒng)名:郵件管理系統(tǒng) 條目名:聯(lián)系人信息 別名: f3 來源: 用戶 去處: tongxunlu 表 數(shù)據(jù)流結(jié)構(gòu):姓名,性別,年齡,電話,住址,公司,郵箱地址 簡(jiǎn)要說明:主要負(fù)責(zé)對(duì)每個(gè)用戶的聯(lián)系人信息進(jìn)行數(shù)據(jù)添加。 表 34 用戶管理 數(shù) 據(jù) 流 系
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1