【正文】
} return c。 ()。 uname=null。 ((limit))。 ((password))。 ((id))。 rs = ()。 try { sql = select * from Uname 。 XXXX 大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 35 ResultSet rs = null。 PreparedStatement pstmt = null。 } } 用戶管理模塊的實(shí)現(xiàn) 在 頁(yè)面中點(diǎn)擊“用戶管理”,則跳轉(zhuǎn)到 頁(yè)面,在這個(gè)頁(yè)面中會(huì)顯示出所有系統(tǒng)的用戶,如圖 所示。 ((categoryname))。 rs = ()。 try{ sql = UPDATE news_category set categoryid = ? and categoryname = ?。 String sql = null。 圖 新聞?lì)悇e管理頁(yè)面 當(dāng)單擊“編輯分類”后,就可以對(duì)已有的新聞?lì)悇e名進(jìn)行修改,把修改后的數(shù)據(jù)保 存 到 數(shù)據(jù) 庫(kù) 里 面的 news_category 表中,通過(guò)調(diào)用 CategoryMgr 類中的modifyCategory()方法來(lái)實(shí)現(xiàn),其部分代碼如下所示: public void modifyCategory(Category category) { DataBaseConnection dbc = new DataBaseConnection()。當(dāng)點(diǎn)擊信息管理模塊后,就可以對(duì)新聞?lì)悇e進(jìn)行管理,具有修改、刪除操作。 } return c。 ()。 category=null。 ((master))。 ((id))。 rs = ()。 try { sql = select * from Catergory 。 ResultSet rs = null。 PreparedStatement pstmt = null。本系統(tǒng)所用的管理類如表 所示。 } public void setMaster(String master) { = master。 } public void setCategoryid(int Categoryid) { = categoryid。 } public void setId(int id){ = id。 private String master。 表 系統(tǒng)類表 JavaBean 說(shuō)明 Category 類別表對(duì)應(yīng)的 JavaBean類 New 新聞表對(duì)應(yīng)的 JavaBean類 Uname 用戶表對(duì)應(yīng)的 JavaBean類 Examine_Page 審報(bào)文件表對(duì)應(yīng)的 JavaBean類 Examine_Result 審報(bào)結(jié)果表對(duì)應(yīng)的 JavaBean類 Category類實(shí)現(xiàn)的部分關(guān)鍵代碼如下 : public class Category { private int id。 JavaBean通過(guò) get()方法設(shè)置屬性,通過(guò) set()方法獲取屬性。 XXXX 大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 30 } catch (Exception e){} } public Connection getConnection() { return 。 public DataBaseConnection() { try { (DBDriver)。 ResultSet rs = null。 private Connection conn = null。 Private final String DBUrl = jdbc:microsoft: //xncczw 是數(shù)據(jù)庫(kù)名 private final String DBUser = sa。 圖 村政務(wù)門戶系統(tǒng)后臺(tái)管理頁(yè)面 登陸模塊中編寫一個(gè) LoginServlet, 用于判斷輸入的用戶名和密碼是否正確 , 在XXXX 大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 29 LoginServlet中主要用到兩個(gè)方法 doGet()和 doPost(), 其中 , 還要在 LoginServlet參數(shù) , 其部分代碼如下 : servlet servletnameLoginServlet/servletname servletclass/servletclass /servlet servletmapping servletnameLoginServlet/servletname urlpattern/admin/LoginServlet/urlpattern /servletmapping 系統(tǒng)類以及部分模塊的實(shí)現(xiàn) 數(shù)據(jù)庫(kù)連接 本系統(tǒng)通過(guò)編寫一個(gè) DataBaseConnection 的類文件來(lái)連接數(shù)據(jù)庫(kù),這個(gè)類文件可以重復(fù)調(diào)用,減少系統(tǒng)開(kāi)銷。 表 用戶登錄模塊事件和條件表 事件 前條件 后條件 T1 S1 S2 T2 S2 S S1 T3 S2 S S1 T4 S2 S S1 在登陸頁(yè)面中點(diǎn)擊登陸按鈕就會(huì)跳轉(zhuǎn)到村政務(wù)門戶系統(tǒng)后臺(tái)管理頁(yè)面 ()。 圖 登陸窗口 登陸 模塊的主要功能包括: 1.用戶登錄:輸入登錄名和口令; 2.身份驗(yàn)證:根據(jù)用戶提交的信息來(lái)判斷用戶的類型。同時(shí)對(duì)于每個(gè)用戶XXXX 大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 27 的屏幕分辨率,會(huì)首先調(diào)用 JavaScript 函數(shù)獲得其參數(shù),然后根據(jù)用戶的具體參數(shù)調(diào)用所需要的顯示頁(yè)面,這對(duì)于一些需要顯示較多信息的頁(yè)面能夠按照固定大小頁(yè)面來(lái)設(shè)計(jì),而不是簡(jiǎn)單的用百分比來(lái)設(shè)計(jì),導(dǎo)致在不同的屏幕分辨率下頁(yè)面的變形。 本系統(tǒng)主窗口如圖 所示。一個(gè)友好完善的界面不僅能夠方便系統(tǒng)的使用者,而且能夠使各個(gè)模塊間的劃分明確,結(jié)構(gòu)更趨于完善。建立起能夠保障系統(tǒng)順利并且正確運(yùn)行的任務(wù),即完成了初期的工作目標(biāo)。本章在前而的系統(tǒng)分析和詳細(xì)設(shè)計(jì)的基礎(chǔ)上,從技術(shù)角度上闡述了系統(tǒng)具體實(shí)現(xiàn),重點(diǎn)描述了系統(tǒng)核心類的實(shí)現(xiàn)。 審 報(bào) 文件I D審 報(bào) 時(shí)間審 報(bào) 內(nèi) 容審 報(bào) 單 位審 報(bào) 方 件號(hào) 圖 審報(bào)文件實(shí)體屬性圖 5.審報(bào)結(jié)果表包括 ID(主鍵 )、審報(bào)文件號(hào)、批注、批注時(shí)間、批注單位五個(gè)屬性,其實(shí)體屬性圖,如圖 所示。 新 聞I D類 別 I D發(fā) 布 人新 聞 標(biāo) 題發(fā) 布 時(shí) 間新 聞 內(nèi) 容 圖 新聞實(shí)體屬性圖 3.新聞?lì)悇e表包括 ID(主鍵 )、類別 ID、類別內(nèi)容三個(gè)屬性,其實(shí)體屬性圖,如圖 所示 。 概念結(jié)構(gòu)設(shè)計(jì) 通過(guò)上面的分 析可得到如下的數(shù)據(jù)概念模型: 1.用戶表它包括 ID(主鍵 )、用戶名、密碼、電子郵件、權(quán)限五個(gè)屬性,其實(shí)體屬性圖,如圖 所示。 XXXX 大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 22 本系統(tǒng)用戶的需求具體體現(xiàn)在對(duì)各類信息進(jìn)行查詢、信息交流和審報(bào)管理,管理員對(duì)信息進(jìn)行錄入和發(fā)布。 數(shù)據(jù)庫(kù)設(shè)計(jì) 數(shù)據(jù)庫(kù)設(shè)計(jì)在系統(tǒng)中占有非常重要的地位,一個(gè)系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)的好壞,直接影響系統(tǒng)開(kāi)發(fā)的難易程度和系統(tǒng)的性能 [16]。系統(tǒng)管理員使用系統(tǒng)的時(shí)序圖如圖 所示。 表 Servlet 列表 Servlet 名 描述 用來(lái)驗(yàn)證用戶登陸 用來(lái)修改新聞欄目 用來(lái)刪除新聞欄目 用來(lái)添加新聞欄目 XXXX 大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 21 門戶系統(tǒng)時(shí)序圖 時(shí)序圖的用途是用來(lái)表示用例中行為的時(shí)序順序。 在本系統(tǒng)中,通過(guò) Servlet 來(lái)調(diào)用 JavaBean 里面的方法, Servlet 用來(lái)處理事務(wù)的請(qǐng)求,并負(fù)責(zé)向客戶發(fā)送請(qǐng)求,創(chuàng)建 JSP 需要的 Bean 和對(duì)象,根據(jù)用戶的請(qǐng)求行為,決定將哪個(gè) JSP 頁(yè)面發(fā)送給用戶。 3. NewMgr 類 NewMgr 類主要針對(duì)新聞內(nèi)容進(jìn)行操作,它包括如下幾個(gè)方法:根據(jù)新聞 ID 號(hào)得所需要的新聞內(nèi)容的方法 getByID()、修改新聞內(nèi)容的方法 ModifyNew()、添加新聞內(nèi)容的方法 AddUname()等。 XXXX 大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 20 C a t e g o r y M g rA l l C a t e g o r y ( )M o d i f y C a t e g o r y ( )g e t B y I D ( )D e l C a t e g o r y ( )U n a m e M g rA l l U n a m e ( )M o d i f y U n a m e ( )D e l U n a m e ( )A d d U n a m e ( )N e w M g rg e t B y I D ( )M o d i f y N e w ( )D e l N e w ( )A d d N e w ( )E x a m i n e _ p a g e M g rg e t B y I D ( )M o d i f y E x a m i n e ( )D e l E x a m i n e ( )A d d E x a m i n e ( ) 圖 系統(tǒng)類圖 1. CategoryMgr 類 CategoryMgr 類主要針對(duì)新聞欄目進(jìn)行操作,它包括如下幾個(gè)方法:查詢所有新聞欄目的方法 AllCategory()、修改欄目的方法 ModifyCategory()、根據(jù) ID 號(hào)得到所有欄目的方法 getByID()、刪除欄目的方法 DelCategory()等。 JavaBean 既實(shí)現(xiàn)業(yè)務(wù)邏輯又實(shí)現(xiàn)業(yè)務(wù)實(shí)體 ,對(duì)數(shù)據(jù)庫(kù)執(zhí)行增加、刪除、修改、 查詢的一系列操作都定義在一個(gè) JavaBean 內(nèi)。應(yīng)用服務(wù)通過(guò) JDBC 接口與數(shù)據(jù)庫(kù)連接。 瀏覽器W E B 服 務(wù) 器 應(yīng) 用 服 務(wù) 器J S PS e r v l e t靜 態(tài) 頁(yè) 面數(shù) 據(jù) 連 接 池J a v a B e a n數(shù) 據(jù) 庫(kù)用 戶 界 面 層 業(yè) 務(wù) 邏 輯 層 數(shù) 據(jù) 存 儲(chǔ) 層 圖 村政務(wù)門戶系統(tǒng)技 術(shù)體系架構(gòu) Web 服務(wù)器負(fù)責(zé)接收瀏覽器提交的 HTTP 頁(yè)面請(qǐng)求 (Request),應(yīng)用服務(wù)器集中部署與應(yīng)用相關(guān)的業(yè)務(wù)邏輯,完成 Web 服務(wù)器提交的應(yīng)用請(qǐng)求。它同應(yīng)用邏輯分離,專心于數(shù)據(jù)存取、備份等操作。主要由 4 個(gè)組件庫(kù)組成: (1) 配置管理:通過(guò)瀏覽器,配置應(yīng)用,生成不同的應(yīng)用系統(tǒng),主要有: 組織結(jié)構(gòu)管理、用戶管理、用戶角色管理、發(fā)布定義信息管理、創(chuàng)建流程結(jié)束后配置信息、主頁(yè)配置信息等; (2) 門戶生成:門戶站點(diǎn)基本應(yīng)用框架,通過(guò)配置管理生成門戶站點(diǎn); XXXX 大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 19 (3) 信息發(fā)布平臺(tái):信息發(fā)布過(guò) 程的基本應(yīng)用框架,通過(guò)配置管理和工作流管理,確定信息如何動(dòng)態(tài)發(fā)布到哪個(gè)頁(yè)面的哪個(gè)相關(guān)欄目; (4) 全文檢索:通過(guò)數(shù)據(jù)庫(kù)的管理機(jī)制,實(shí)現(xiàn) Office 文檔、網(wǎng)頁(yè)或圖片的全面文檔管理及進(jìn)行全文檢索服務(wù)。 2.業(yè)務(wù) 邏輯層 (應(yīng)用層 ): 門戶系統(tǒng)的支撐平臺(tái),它根據(jù)用戶界面層提交的請(qǐng)求,并按照業(yè)務(wù)邏輯提取、篩選和處理數(shù)據(jù),并將處理完的數(shù)據(jù)返回到用戶界面層顯示。門戶系統(tǒng)平臺(tái)的授權(quán)體系是可以重新建立的,但是其認(rèn)證源與后臺(tái)是一個(gè)整體,在原有的認(rèn)證體系上可以重新分組劃分角色,而組和角色信息是專為門戶應(yīng)用的訪問(wèn)而劃分的,這樣具有針對(duì)性的授權(quán)方式將更有利于門戶系統(tǒng)提供靈活的個(gè)性化服務(wù)。表示層的表現(xiàn)邏輯由門戶系統(tǒng)平臺(tái)承擔(dān),它 除了負(fù)責(zé)提供個(gè)性化的信息展示以外,也會(huì)承擔(dān)系統(tǒng)的內(nèi)容管理任務(wù),將系統(tǒng)中眾多復(fù)雜的文檔統(tǒng)一存儲(chǔ),并提供給相應(yīng)的訪問(wèn)者使用。 1.用戶界面層 (表示層 ) 后臺(tái)的業(yè)務(wù)系統(tǒng)通過(guò)表示層展現(xiàn)給最終用戶,給用戶提供多種接入方式的交互手段。 本章首先介紹了門戶系統(tǒng)的技術(shù)體系統(tǒng)架構(gòu),然后,對(duì) JavaBean 的設(shè)計(jì)進(jìn)行了詳細(xì)設(shè)計(jì),最后對(duì)系統(tǒng)的數(shù)據(jù)庫(kù)進(jìn)行設(shè)計(jì)。 XXXX 大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 18