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

正文內(nèi)容

畢業(yè)設(shè)計基于mvc的新聞發(fā)布系統(tǒng)的設(shè)計與實現(xiàn)-文庫吧資料

2024-12-09 16:43本頁面
  

【正文】 4 實現(xiàn)截圖 是 的一個子頁面,它實現(xiàn)欄目的添加功能。 圖 53 實現(xiàn)截圖 實現(xiàn)新聞欄目的管理,管理員可以在此對進行新聞欄目的相關(guān)操作。當用戶在后臺主頁面中選擇添加新聞按鈕時,管理員便進入此頁面。其實現(xiàn)顯示截圖如圖 52。 圖 51 頁面實現(xiàn)截圖 后臺 實現(xiàn) 系統(tǒng)后臺視圖層主要由 、 、 和 組成。 僅負責顯示新聞欄目和系統(tǒng)已有新聞以及為管理員用戶提供一個登錄入口。 CSS 樣式表可以使系統(tǒng)整體風(fēng)格一致。具體代碼如下: % page contentType text/html。 if userName null 。系統(tǒng)可以通過 session 來判定用戶是否登錄,并且,如果某個用戶要執(zhí)行系統(tǒng)某些功能時,系統(tǒng)也可以通過一個 session 對其進行操作權(quán)限的判定。 % 的設(shè)置主要是方便系統(tǒng)對管理員權(quán)限的判定。 String tablewidth 100%。 String tdbgcolor3 DDDDDD。 String trbgcolor3 FFFFFF。 String tablebgcolor2 6699CC。 String trbgcolor 336699。 String placebgcolor EEEEEE。具體代碼如下: % page contentType text/html。 視圖層實現(xiàn) 在系統(tǒng)其它視圖層部分實現(xiàn)之前,先對那些常用的公共頁面模塊部分實現(xiàn)。 第 5 章 系統(tǒng)實現(xiàn) 根據(jù)上一章的設(shè)計思路設(shè)計用來完成系統(tǒng)用例的業(yè)務(wù)功能,整個系統(tǒng)按照MVC 模式的三個部分以及數(shù)據(jù)庫連接池進行編碼實現(xiàn),分為視圖層、控制層、模型層和數(shù)據(jù)庫連接池。 圖 415 連接池內(nèi)部主件聯(lián)系圖 小結(jié) 本章首先進行了系統(tǒng)總體設(shè)計,接著按照 MVC 設(shè)計模式的三層結(jié)構(gòu)根據(jù)系統(tǒng)需求用例對新聞發(fā)布系統(tǒng)功能進行設(shè)計,最后設(shè)計出系統(tǒng)的數(shù)據(jù)庫并對數(shù)據(jù)庫連接進行了相應(yīng)的設(shè)計。其中: ConnectionObject 稱為連接對象類,用來實現(xiàn)對一個連接對象狀態(tài)的管理,并為連接池管理類提供 服務(wù); ConnectionPool稱為連接池管理類,用來實現(xiàn)對連接池的管理和調(diào)度; 稱為數(shù)據(jù)庫連接配置文件,存放數(shù)據(jù)庫連接所需要的配置信息,供連接池工作時使用。 具體設(shè)計 根據(jù)連接池的工作原理,本文設(shè)計了一個的連接池組件。所以需要設(shè)定一個連接對象可使用的最大次數(shù)。定義上下界可根據(jù)客戶端的情況動態(tài)地使用資源, 以提高系統(tǒng)的效率。工作原理如圖 414 所示。當需要使用數(shù)據(jù)庫連接的時候,直接從連接池中取出空閑對象供用戶使用。這樣也會產(chǎn)生上面提到的種種問題,但是,如果采用數(shù)據(jù)庫鏈接池就方便得多,本系統(tǒng)采用的便是數(shù)據(jù)庫鏈接池模式對數(shù)據(jù)庫進行連接。 本系統(tǒng)是一個新聞發(fā)布和管理的系統(tǒng),新聞系統(tǒng)是面向廣大閱讀新聞的用戶的,用戶需要閱讀新聞時,系統(tǒng)需要從 新聞數(shù)據(jù)庫中調(diào)出用戶需要的新聞條目。連接數(shù)據(jù)庫不僅要開銷一定的通訊和內(nèi)存資源,還必須完成用戶驗證、安全上下文配置這類任務(wù);同時應(yīng)用程序還要管理每一個連接,確保這些連接在被使用完后能被正確關(guān)閉。首先,要為每次 web 請求(例如客戶瀏覽 一件商品信息)建立一次數(shù)據(jù)庫連接。 表 47 管理員 Master 表 序號 字段名 字段含義 類型 寬度 是否非空 備注 1 UserName 管理員用戶名 char 12 Y Key 2 Password 管理員密碼 char 12 Y 無 表 48 新聞 News 表 序號 字段名 字段含義 類型 寬度 是否非空 備注 1 newsId 新聞編號 int 4 Y Key 2 Title 新聞標題 char 50 N 無 3 Content 新聞內(nèi)容 char 5000 N 無 4 UserName 新聞作者 char 12 Y 外碼 5 Compose_date 新聞發(fā)布時間 datetime 8 Y 無 6 categoryId 新聞欄目編號 int 4 Y 外碼 表 49 欄目 Category 表 序號 字段名 字段含義 類型 寬度 是否非空 備注 1 categoryId 新聞欄目編號 int 4 Y Key 2 categoryName 新聞欄目名稱 char 20 Y 無 數(shù)據(jù)庫連接池設(shè)計 傳統(tǒng)的數(shù)據(jù)庫連接 傳統(tǒng)的數(shù)據(jù)庫連接模式基本上是按以下步驟進行:①在主程序(如 Servlet、Beans)中建立數(shù)據(jù)庫連接;②進行 SQL 操作,取出數(shù)據(jù);③斷開數(shù)據(jù)庫連接 [9]。本系統(tǒng)使用 SQL Server2021 數(shù)據(jù)庫。如圖 413 為本新聞發(fā)布系統(tǒng)實體間的 ER 圖。通過分析,針對系統(tǒng)管理 員,總結(jié)出如下需求信息: ( 1)管理員可以對新聞欄目進行增、刪、改; ( 2)管理員可以對新聞條目進行增、刪、改。 ( 4)每個新聞除了包含新聞的基本信息之外,還得包含新聞所對應(yīng)的 HTML路徑信息。 對于一般用戶來說,他們所關(guān)心的是新聞的瀏覽。 表 46 欄目管理控制層靜態(tài)類責任表 名稱 類型 屬性 責任(或操作) EditCategoryServlet 控制 無 對新聞欄目編輯的控制 DeleteCategoryServlet 控制 無 對刪除新聞欄目的控制 AddCategoryServlet 控制 無 對添加新聞欄目的控制 數(shù)據(jù)庫設(shè) 計 數(shù)據(jù)庫需求分析 由于本系統(tǒng)面向的對象有兩個:一般用戶和系統(tǒng)管理員。欄目管理靜態(tài)類圖設(shè)計如圖 412。 圖 411 新聞管理靜態(tài)模型圖 根據(jù)圖 411 新聞管理靜態(tài)模型設(shè)計,對各個類的責任和功能進行說明。 表 44 用戶等錄控制類責任表 名稱 類型 屬性 責任(或操作) LoginServlet 控制 無 控制用戶登錄 新聞管理 新聞管理中主要涉及到新聞信息的添加、刪除和修改,所以其控制層由AddNewsServlet、 DeleteServlet 和 EditServlet 完成。用戶登錄控制器由 LoginServlet 完成,實現(xiàn)登錄控制的靜態(tài)類圖如圖 410。 表 43 欄目管理類責任表 名稱 類型 屬性 責任(或操作) ClassManage page 邊界 無 顯示系統(tǒng)既有欄目,管理員可以在此對欄目進行修改和刪除操作 Addclass page 邊界 無 添加欄目,提交給添加欄目控制器 Category 實體 ID 和 Name 新聞欄目的抽象 CategoryMgr 控制 無 實現(xiàn)對新聞欄目的操作 表 43 欄目管理類責任表(續(xù)) EditCategoryServlet 控制 無 在控制層中設(shè)計 DeleteCategoryServet 控制 無 在控制層中設(shè)計 AddCategoryServlet 控制 無 在控制層中設(shè)計 控制層設(shè)計 用戶登錄 當用戶通過系統(tǒng)前臺提供的登錄入口登錄后臺系統(tǒng)時,系統(tǒng)將用戶的登錄信息提交給登錄控制層處理。 表 42 新聞管理類責任表 名稱 類型 屬性 責任(或操作) Main page 邊界 無 顯示系統(tǒng)后臺主頁面,系統(tǒng)管理員可以在此對系統(tǒng)進行操作 表 42 新聞管理類責任表(續(xù)) NewsMgr 控制 無 對新聞條目進行操作,修改和刪除 News 實體 新聞屬性 對新聞實體的抽象 Addnews page 邊界 無 添加新聞界面,以 Form 形式收集信息然后提交給控制器 AddNewsServlet 控制 無 在控制層設(shè)計 EditNewsServlet 控制 無 在控制層設(shè)計 DeleteNewsServlet 控制 無 在控制層設(shè)計 欄目管理 欄目管理中可以對已有欄目的編輯、刪除以及添加新欄目,欄目管理靜態(tài)模型如圖 49。其靜態(tài)模型如圖 48。 圖 47 系統(tǒng)前臺顯示和用戶登錄靜態(tài)模型圖 根據(jù)上面的系統(tǒng)前臺模型,我們可以來說明各個類的責任和功能。 前臺顯示和用戶登錄 在前臺顯示和用戶登錄模塊中,充當模型層的是 News 和 NewsMgr 根據(jù)系統(tǒng)分析中的系統(tǒng)前臺需求用例分析和上述的前臺界面功能描述,對系統(tǒng)的前臺的每一個流程、每一個模塊進行詳細功能設(shè)計。 圖 46 欄目管理頁面設(shè)計圖 模型層設(shè)計 本系統(tǒng)模型層由 JavaBean 完成,模型層設(shè)計主要設(shè)計出完成各個功能模塊中模型層的 JavaBean 類。鏈接按鈕下面是系統(tǒng)已有新聞欄目的列表,在此,管理員可以對新聞發(fā)布系統(tǒng)的欄目進行操作(編輯和 刪除欄目)。 圖 45 發(fā)布新聞頁面設(shè)計圖 .3 欄目管理設(shè)計 如果系統(tǒng)管理員在系統(tǒng)后臺主頁面中選擇“欄目管理”,系統(tǒng)將鏈接到新聞欄目管理頁面。確認所有內(nèi)容均已填好,點擊“發(fā)表”按鈕,新聞發(fā)布工作完成,如果點擊“清除”按鈕,則系統(tǒng)清除管理員剛才的所有輸入,讓管理員重新填寫新聞的各項內(nèi)容。管理員可以在此對系統(tǒng)已有的新聞進行修改和刪除操作。 其次,歡迎詞下方是系統(tǒng)管理的功能選擇,一目了然,管理員可以在此選擇要操作的模塊進入,然后執(zhí)行相應(yīng)的操作。后臺界面設(shè)計如圖 44 所示。 后臺設(shè)計 .1 后臺主頁面設(shè)計 當用戶登錄到系統(tǒng)后臺時,他便成為系統(tǒng)管理員,可以執(zhí)行對新聞和欄目的查看、修改、刪除和添加。當用戶點擊新聞所在的欄目時 ,系統(tǒng)在新聞列表中只顯示本欄目的新聞條目。新聞列表中僅顯示新聞的標題,發(fā)布時間和新聞作者,如果想瀏覽整篇新聞,用戶可以點擊新聞標題(超鏈接),這時系統(tǒng)會將用戶引導(dǎo)向一個包含新聞具體內(nèi)容的 HTML 文件。 其次,在登錄界面的下方是新聞欄目的顯示,顯示系統(tǒng)新聞欄目數(shù)據(jù)庫中已有的新聞欄目,一目了然,用戶可以方便地找到自己喜歡和關(guān)心的新聞 所在的欄目。 圖 43 前臺界面設(shè)計圖 首先,在本系統(tǒng)的前臺界面的頂部用戶可以看到一個專為系統(tǒng)管理員用戶提供的登錄入口,為系統(tǒng)管理員提供了方便。如果把一個系 統(tǒng)比作一個人,那么前臺界面則是這個人的臉,因此系統(tǒng)的前臺界面的設(shè)計是比較重要的,并且,前臺界面應(yīng)該被設(shè)計得比較簡潔,方便。 因此,識別出系統(tǒng)主要的類:新聞類( News)和新聞管理類( NewsMgr),欄目類( Category)和欄目管理類( CategoryMgr),數(shù)據(jù)庫連接池的連接對象類( ConnectionObject)和連接池管理類( ConnectionPool)以及各個 Servlet類。系統(tǒng)在添加新聞時,應(yīng)該可以將添加的新聞保存為一個 HTML 文件。 圖 42 系統(tǒng)構(gòu)架圖 發(fā)現(xiàn)系統(tǒng)類 發(fā)現(xiàn)系統(tǒng)類是域建模的工作,其主要目的是根據(jù)系統(tǒng)需求用例及描述,找到代表與本新聞系統(tǒng)將要解決的問題有關(guān)的事務(wù)和概念的“對象”,即類 [1]。 圖 41 系統(tǒng)設(shè)計模式圖 對于 MVC 設(shè)計模式,在本系統(tǒng)中具體實現(xiàn)方式是: Model 由 JavaBean 完成,View 由 JSP 完成, Controller 由 Servlet 完成,再加上數(shù)據(jù)庫連接池專門負責數(shù)據(jù)庫連接和管理。 系統(tǒng)總體設(shè)計 系統(tǒng)構(gòu)架 系統(tǒng)基于 MVC Model2 設(shè)計模式,設(shè)計出本系統(tǒng)自己的設(shè)計模式,在 MVC Model2 基礎(chǔ) 上加入數(shù)據(jù)庫連接池模塊層對數(shù)據(jù)庫操作進行封裝。本章的工作為系統(tǒng)的設(shè)計打下基礎(chǔ)。序列圖則反映了用例各個類之間的具體調(diào)用過程 [7],如圖便是根據(jù)系統(tǒng)的角色分析和系統(tǒng)用例模型而得出的相應(yīng)活動的順序圖如圖 32 至圖 37。 用例驅(qū)動分析 通過以上對系統(tǒng)需求的分析已經(jīng)定義了系統(tǒng)的角色和系統(tǒng)用例。 ( 7)添加欄目用例文檔: 基本流程:用戶填寫欄目相關(guān)信息,并確定添加欄目,系統(tǒng)將存儲此欄目,并將控制 權(quán)交給欄目管理用例。 分支流程:如果用戶放棄相應(yīng)操作,控制權(quán)將直接回到欄目管理用例。 分支流程:如果用戶放棄新聞添加,系統(tǒng)將直接將控制權(quán)交回給新聞管理用例。 如果用戶選擇添加新聞,系統(tǒng)將控制權(quán)交給添加新聞用例。用戶在進行相應(yīng)的操作后,系統(tǒng)存儲新的信息,系統(tǒng)將控制權(quán)交給后臺管理用例。 ( 3)系統(tǒng)后臺 管理用例文檔: 基本流程:用戶在登錄系統(tǒng)后臺后,可以對新聞和欄目進行操作,根據(jù)用戶的操作選擇,進入擴展用例。 分支流程:如果用戶取消登錄,則系統(tǒng)將信息重置,用戶回到前臺顯示頁面。 分支流程:如果某個欄目下沒有任何新聞,系統(tǒng)將顯示一條信息,以指出該欄目沒有新聞可以顯示。 圖 31 系統(tǒng)用例模型圖 用例文檔 用例文檔主要為了描述出用例的詳細業(yè)務(wù)流程,本系統(tǒng)主要包括以下用例文檔: 1 前臺顯示用例文檔: 基本流程:當用戶在前臺瀏覽新聞系統(tǒng)時,系統(tǒng)默認顯示給用戶的是所有欄目和所有新聞條目(每頁顯示 8 條新聞, 一頁顯示不完可以分頁顯示)。 用例識別 在 UML 文檔中,用 例(即 Use Case)的定義是:在不展現(xiàn)一個系統(tǒng)或子系統(tǒng)內(nèi)部結(jié)構(gòu)的情況下,對系統(tǒng)或子系統(tǒng)的某個連貫的功能單元的定義和描述 [6]。而事實上這些人對于系統(tǒng)來說都是用戶,只是當用戶登錄到后臺便成了管理員而已。 從系統(tǒng)描述可知,在前臺顯示模塊中,系統(tǒng)主要對一般用戶的
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1