新聞發(fā)布系統(tǒng)畢業(yè)論文

上傳人:沈*** 文檔編號(hào):78381496 上傳時(shí)間:2022-04-21 格式:DOC 頁數(shù):44 大?。?.32MB
收藏 版權(quán)申訴 舉報(bào) 下載
新聞發(fā)布系統(tǒng)畢業(yè)論文_第1頁
第1頁 / 共44頁
新聞發(fā)布系統(tǒng)畢業(yè)論文_第2頁
第2頁 / 共44頁
新聞發(fā)布系統(tǒng)畢業(yè)論文_第3頁
第3頁 / 共44頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《新聞發(fā)布系統(tǒng)畢業(yè)論文》由會(huì)員分享,可在線閱讀,更多相關(guān)《新聞發(fā)布系統(tǒng)畢業(yè)論文(44頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、 新聞發(fā)布系統(tǒng) 摘要 【摘要】 隨著計(jì)算機(jī)科學(xué)的發(fā)展,數(shù)據(jù)庫技術(shù)在Internet中的應(yīng)用越來越廣泛,為廣大網(wǎng)絡(luò)用戶提供了更加周到和人性化的服務(wù)。個(gè)性化已逐漸成為當(dāng)今Web應(yīng)用的潮流。利用JSP技術(shù)開發(fā)的網(wǎng)站新聞管理系統(tǒng),實(shí)現(xiàn)了網(wǎng)站新聞的動(dòng)態(tài)管理,因?yàn)榭梢杂脕韯?dòng)態(tài)發(fā)布新聞信息,所以使得對(duì)信息的管理更加及時(shí)、高效,提高了工作效率。 【關(guān)鍵詞】Struts組建編程模型、ActionForm的說明、樣式層、持久層、服務(wù)層、控制層。目錄 摘要 1 0 引言 3 1 系統(tǒng)分析 4 1.1 需求分析 4 1.2 可行性分析 4 2 總體設(shè)計(jì) 4 2.1 項(xiàng)目規(guī)

2、劃 4 2.2 系統(tǒng)功能結(jié)構(gòu)圖 4 3 系統(tǒng)設(shè)計(jì) 5 3.1 設(shè)計(jì)目標(biāo) 5 3.2 開發(fā)及運(yùn)行環(huán)境 5 3.3 邏輯結(jié)構(gòu)設(shè)計(jì) 5 4 網(wǎng)站總體架構(gòu) 6 4.1 文件布局 6 4.2 網(wǎng)站首頁的運(yùn)行結(jié)果 6 4.2 類的分布 8 5 網(wǎng)站后臺(tái)主要功能模塊設(shè)計(jì) 8 5.1 后臺(tái)登錄模塊設(shè)計(jì) 8 5.2 總管理員設(shè)置模塊設(shè)計(jì) 11 5.3 更改總管理員密碼模塊設(shè)計(jì) 23 5.4 新聞信息管理 27 5.5 總結(jié) 32 6 網(wǎng)站前臺(tái)主要功能模塊設(shè)計(jì) 32 6.1 今日新聞的顯示 32 6.2 輸入新聞的關(guān)鍵字查找新聞 34 6.3

3、 新聞人物的查看和投票 36 7 小結(jié) 39 附錄一 參考文獻(xiàn) 40 附錄二 數(shù)據(jù)表 41 附錄三 文件架構(gòu)圖 43 – 44 – 0 引言 21世紀(jì)的特征是數(shù)字化、網(wǎng)絡(luò)化和信息化,它是一個(gè)以數(shù)據(jù)庫技術(shù)為核心的信息時(shí)代。而隨著信息技術(shù)的發(fā)展,報(bào)社行業(yè)也成為一個(gè)高度依賴信息業(yè)的行業(yè)。信息技術(shù)的飛速發(fā)展不僅使新聞工作者逐漸擺脫了繁重的手工勞動(dòng)、提高了工作效率,而且推著報(bào)社行業(yè)向現(xiàn)代化管理邁進(jìn)?,F(xiàn)代化的新聞發(fā)布系統(tǒng)也應(yīng)該有現(xiàn)代化的管理系統(tǒng)。在科技日益發(fā)達(dá)的今天,人們對(duì)新聞更加重視。因此,新聞發(fā)布進(jìn)行現(xiàn)代化管理就變的尤為重要。 數(shù)據(jù)庫是數(shù)據(jù)管理的最新技術(shù),是計(jì)算機(jī)科學(xué)的

4、重要分支。今天,信息資源已成為各個(gè)部門的重要財(cái)富,建立一個(gè)滿足新聞發(fā)布信息處理要求的行之有效的信息系統(tǒng)也成為一個(gè)報(bào)社發(fā)展的重要條件。新聞發(fā)布系統(tǒng),它是報(bào)社管理系統(tǒng)的一部分,其作用是對(duì)所有新聞進(jìn)行有效的管理。通過本系統(tǒng)不僅可以進(jìn)行新聞發(fā)布工作,而且還可以對(duì)和新聞相對(duì)應(yīng)的人員情況進(jìn)行查詢,并可隨時(shí)進(jìn)行增加,修改,刪除等工作,使工作人員能夠有效地對(duì)新聞進(jìn)行有效的控制和管理。因此,通過新聞發(fā)布系統(tǒng),使新聞工作系統(tǒng)化,規(guī)范化,自動(dòng)化,從而大大提高了新聞發(fā)布工作的效率。 1 系統(tǒng)分析 1.1 需求分析 通過相關(guān)調(diào)查,要求網(wǎng)站具有以下功能; 通過網(wǎng)絡(luò),展示各行業(yè)新聞及相關(guān)信息。 提供新聞搜

5、索功能。 設(shè)置新聞人物投票功能,并統(tǒng)計(jì)投票數(shù)量。 支持其他網(wǎng)站的友情鏈接。 為后臺(tái)管理提供管理入口。 1.2 可行性分析 利用計(jì)算機(jī)實(shí)現(xiàn)新聞發(fā)布管理勢(shì)在必行。對(duì)于報(bào)社來說,利用計(jì)算機(jī)支持管理部門高效率完成新聞信息管理的日常事務(wù),是適應(yīng)現(xiàn)代報(bào)社制度要求、推動(dòng)報(bào)社由勞動(dòng)型管理走向科學(xué)化、規(guī)范化的必要條件;而新聞信息管理是一項(xiàng)瑣碎、復(fù)雜而又必須十分細(xì)致準(zhǔn)確的工作,新聞信息的管理,工作人員信息的管理,等,絕對(duì)的不允許出錯(cuò),如果實(shí)行手工操作,需手工填制大量的表格,這就會(huì)耗費(fèi)工作人員大量的時(shí)間和精力,而且安全度也不理想,利用計(jì)算機(jī)進(jìn)行新聞發(fā)布信息工作的管理,不僅能夠保證各項(xiàng)信

6、息準(zhǔn)確無誤、快速輸出,同時(shí)計(jì)算機(jī)具有手工管理所無法比擬的優(yōu)點(diǎn),例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長、成本低等。這些優(yōu)點(diǎn)能夠極大地提高新聞管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件 2 總體設(shè)計(jì) 2.1 項(xiàng)目規(guī)劃 新聞網(wǎng)是一個(gè)功能完善的新聞?lì)惥W(wǎng)站,由客戶前臺(tái)新聞瀏覽和后臺(tái)新聞管理兩大部分組成。 前臺(tái)功能模塊 前臺(tái)主要包括新聞分類、顯示新聞詳細(xì)信息、新聞信息查詢、新聞人物投票、友情鏈接、提供后臺(tái)登錄口。 后臺(tái)管理模塊 后臺(tái)主要包括后臺(tái)總管理員設(shè)置及密碼修改、添加管理員、管理員信息設(shè)置、新聞?lì)愋凸芾?、新聞詳?xì)類型管理、新聞信息管理、鏈接

7、管理、新聞人物管理、退出后臺(tái)。 2.2 系統(tǒng)功能結(jié)構(gòu)圖 新聞發(fā)布系統(tǒng)前臺(tái)功能結(jié)構(gòu),如圖所示。 新聞網(wǎng)前臺(tái)功能結(jié)構(gòu) 新聞分類 新聞詳細(xì)信息 新聞信息查詢 新聞人物投票 友情鏈接 后臺(tái)登錄口 新聞網(wǎng)前臺(tái)功能結(jié)構(gòu)圖 新聞網(wǎng)后臺(tái)功能結(jié)構(gòu),如圖所示。 新聞網(wǎng)后臺(tái)功能結(jié)構(gòu) 總管理員設(shè)置 總管理員修改密碼 添加管理員 管理員信息設(shè)置 新聞?lì)愋凸芾? 新聞詳細(xì)類型管理 新聞信息管理 新聞人物管理 鏈接管理 退出后臺(tái) 新聞網(wǎng)后臺(tái)功能結(jié)構(gòu)圖 3 系統(tǒng)設(shè)計(jì) 3.1 設(shè)計(jì)目標(biāo) 本網(wǎng)站是根據(jù)各行業(yè)新聞信息分類進(jìn)行開發(fā)設(shè)計(jì)的,主要實(shí)現(xiàn)如下目標(biāo): 分類展示各行業(yè)最

8、新新聞狀況。 顯示新聞的詳細(xì)信息。 設(shè)置新聞搜索功能模塊。 設(shè)置新聞人物投票及投票數(shù)統(tǒng)計(jì)功能。 提供其他網(wǎng)站的友情鏈接。 3.2 開發(fā)及運(yùn)行環(huán)境 硬件平臺(tái): CPU:P41.8GHz; 內(nèi)存:256MB以上。 軟件平臺(tái): 操作系統(tǒng):Windows xp或者window7; 數(shù)據(jù)庫:SQL Server 2000; 開發(fā)工具包:JDK Version1.4.1; Web服務(wù)器:Tomcat; 瀏覽器:google 分辨率:最佳效果1024*768像素。 3.3 邏輯結(jié)構(gòu)設(shè)計(jì) 本系統(tǒng)數(shù)據(jù)庫采用SQL server 2000數(shù)據(jù)庫,系統(tǒng)數(shù)據(jù)庫名稱為db_news

9、。數(shù)據(jù)庫db_news中包含7張表。關(guān)于數(shù)據(jù)庫中的數(shù)據(jù)表請(qǐng)參見附錄B 4 網(wǎng)站總體架構(gòu) 4.1 網(wǎng)站首頁的運(yùn)行結(jié)果 網(wǎng)站前臺(tái)首頁的運(yùn)行結(jié)果如圖所示。 3 1 2 網(wǎng)站前臺(tái)首頁運(yùn)行結(jié)果 網(wǎng)站框架圖說明如下: 表`1 網(wǎng)站前臺(tái)首頁頁面說明 區(qū)域 名稱 說明 對(duì)應(yīng)文件 1 網(wǎng)站導(dǎo)航 主要展示網(wǎng)站的旗幟廣告和站內(nèi)導(dǎo)航條 typeNewWatch.do 2 功能模塊 主要用于顯示導(dǎo)航模塊中的功能 linkSelect.do 3 內(nèi)容顯示 主要用于顯示功能模塊中的內(nèi)容 dateNew

10、s.do?type=今日新聞 網(wǎng)站后臺(tái)首頁的運(yùn)行結(jié)果如圖所示。 3 1 2 網(wǎng)站后臺(tái)首頁運(yùn)行結(jié)果 網(wǎng)站后臺(tái)首頁中的各部分說明如表2所示。 表2 網(wǎng)站后臺(tái)首頁頁面說明 區(qū)域 名稱 說明 對(duì)應(yīng)文件 1 網(wǎng)站導(dǎo)航 主要展示網(wǎng)站的旗幟廣告和站內(nèi)導(dǎo)航條 typeTopAction.do 2 功能模塊 主要用于顯示導(dǎo)航模塊中的功能 left_main.jsp 3 內(nèi)容顯示 主要用于顯示功能模塊中的內(nèi)容 right_main.jsp 4.2 類的分布 新聞發(fā)布系統(tǒng)是利用Struts框架實(shí)

11、現(xiàn)的,新聞發(fā)布系統(tǒng)中類的分布如圖所示。 樣式層 前臺(tái)控制層 服務(wù)層 工具層 后臺(tái)控制層 持久層 類的分布 類存放的文件夾功能如表3所示。 表3 類存放的文件夾功能列表 名稱 功能 持久層(dao文件夾) 各種方法(增加、刪除、修改和查詢)的實(shí)現(xiàn) 樣式層(domain文件夾) 所存放的類是Actionform類,在類中必須要繼承ActionForm(也就是entends ActionForm) 服務(wù)層(server文件夾) 存放的dao層功能的業(yè)務(wù)的類 控制層(webtier文件夾) 存放在js

12、p頁面中存在的方法實(shí)現(xiàn)的類 工具層(tool文件夾) 類名為JDBConnection.java(連接數(shù)據(jù)庫的功能)、類名為Chinese.java(字符級(jí)轉(zhuǎn)換的類)、類名為SessionLib(用來存在session變量) 5 網(wǎng)站后臺(tái)主要功能模塊設(shè)計(jì) 5.1 后臺(tái)登錄模塊設(shè)計(jì) 在新聞發(fā)布系統(tǒng)中,后臺(tái)管理員分為兩種:一個(gè)是普通管理員,他可以對(duì)新聞?lì)愋瓦M(jìn)行定義,也可以發(fā)布新聞、設(shè)置投票人數(shù)及網(wǎng)站鏈接;另一個(gè)是超級(jí)管理員,他除了可操作以上功能外,還可以對(duì)普通管理員進(jìn)行設(shè)置,總管理員和普通管理員都能通過后臺(tái)登錄頁面登錄后臺(tái),然后對(duì)系統(tǒng)進(jìn)行相應(yīng)的操作。。 在前臺(tái)單擊“進(jìn)入后臺(tái)”超鏈接

13、,即可進(jìn)入到后臺(tái)登錄頁面,如圖所示。 單擊“賬號(hào)”和“密碼”的文本框,輸入賬號(hào):mr 密碼:*****,單擊【提交】按鈕即可進(jìn)入新聞網(wǎng)后臺(tái)界面。 后臺(tái)登錄頁面 1. 樣式層的類 具體代碼如下 /******************************* ManagerActionForm.java***************************/ package com.victor.domain; import org.apache.struts.action.*; public class ManagerActionForm extends Action

14、Form { private Integer managerID; //在數(shù)據(jù)庫中的流水號(hào) private String managerIssueDate; //管理員添加日期 private String managerMark; //管理員的標(biāo)示 private String managerName; //管理員帳號(hào) private String managerPassword; //管理員密碼 private String managerRealName; //管理員的真實(shí)姓名 private String

15、 managerType; //管理員的權(quán)限 public ManagerActionForm() { this.managerID = new Integer( -1); this.managerIssueDate = ""; this.managerMark = ""; this.managerName = ""; this.managerPassword = ""; this.managerRealName = ""; this.managerType = ""; } publi

16、c Integer getManagerID() { return managerID; } public void setManagerID(Integer managerID) { this.managerID = managerID; } …………………………………………………. 2.持久層的方法 驗(yàn)證輸入的內(nèi)容是否正確有很多方法,筆者采用的是利用sql語句的方法進(jìn)行驗(yàn)證輸入賬號(hào)和密碼。對(duì)輸入的賬號(hào)及密碼判斷是否正確。 利用接口類的方法實(shí)現(xiàn)的代碼如下: /********************************* Mana

17、gerDao.java*******************************/ public interface ManagerDao { public ManagerActionForm managerCheck(ManagerActionForm managerActionForm) } 實(shí)現(xiàn)接口的方法的代碼如下: /******************************* ManagerDaoImpl.java*****************************/ //核對(duì)普通管理員帳號(hào)和密碼 public class ManagerDaoImpl im

18、plements ManagerDao { //實(shí)現(xiàn)接口類中的方法用implements加上接口類名 public ManagerActionForm managerCheck(ManagerActionForm managerActionForm) { ManagerActionForm manager = null; 定義一個(gè)Object型的數(shù)據(jù),初使化為null JDBConnection connection = new JDBConnection(); //連接數(shù)據(jù)庫的方法 String sql = "select *

19、from tb_manager where Name='" + managerActionForm.getManagerName() + "'"; try { ResultSet rs = connection.executeQuery(sql); // 把sql語句傳到JDBConnection類中去 while (rs.next()) { manager = new ManagerActionForm(); manager.setManagerPassword(rs.getStrin

20、g(3)); //查找過所需要的字段數(shù)據(jù) } } catch (SQLException ex) { } connection.close(); return manager; //把對(duì)象返回到方法中去 } } 3.服務(wù)層的方法 利用接口類的方法實(shí)現(xiàn)的代碼如下: /******************************** ManagerFacade.java*****************************/ public interface ManagerFacade { public

21、 ManagerActionForm managerCheck(ManagerActionForm managerActionForm) } 實(shí)現(xiàn)接口的方法的代碼如下: /******************************* ManagerFacadeImpl.java**************************/ public class ManagerFacadeImpl implements ManagerFacade { //實(shí)現(xiàn)接口類的方法用implements private ManagerDao managerDao; publi

22、c ManagerFacadeImpl() { this.managerDao = new ManagerDaoImpl(); //實(shí)現(xiàn)dao類的方法。 } public ManagerActionForm managerCheck(ManagerActionForm managerActionForm) { return this.managerDao.managerCheck(managerActionForm); //調(diào)用持久層的方法 } } 4.管理員登陸控制層的方法 /**************************

23、** ManagerCheckAction.java****************************/ package com.victor.webtier.managerAction; //核對(duì)帳號(hào)和密碼 public class ManagerCheckAction extends Action { private ManagerFacade managerFacade; public ManagerCheckAction() { this.managerFacade = new ManagerFacadeImpl(); } public A

24、ctionForward perform(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest,HttpServletResponse httpServletResponse) { Chinese chinese = new Chinese(); ManagerActionForm managerActionForm = (ManagerActionForm) actionForm; managerActionForm.set

25、ManagerName(chinese.str(httpServletRequest. getParameter("managerName"))); ManagerActionForm manager = this.managerFacade.managerCheck(managerActionForm); //通過對(duì)象調(diào)用方法 if (manager == null) { return actionMapping.findForward("managerWr

26、ong");//通過manager是空值的話,返回錯(cuò)誤頁面。 } else if (!manager.getManagerPassword().equals(httpServletRequest.getParameter( "managerPassWord"))) { return actionMapping.findForward("managerWrong");//查找的值與在jsp頁面中的值不一致,返回錯(cuò)誤頁面。 } return actionMapping.findForward("managerRight"); //查找的值與在jsp頁面

27、中的值一致,返回正確頁面。 }} 5.struts-config.xml中的配置 在這里主要配置formBean和action動(dòng)作指向的jsp頁面。代碼如下: /******************************** struts-config.xml*********************************/ 6.管理員登陸jsp頁面的說明 /********************************* managerCheck.jsp*********************************/

管理員登陸

 

30、ellspacing="3">

31、

帳號(hào):
密碼:
    
5.2 總管理員設(shè)置模塊設(shè)計(jì) 總管理員在數(shù)據(jù)庫中是惟一的,總管理員的信息在頁面中不會(huì)顯示出來,在此頁面中只能修改自己的密碼及對(duì)普通管理員進(jìn)行設(shè)置。 用戶單擊“總管理員設(shè)置”超鏈接,進(jìn)入總管理員設(shè)置頁面。系統(tǒng)首先對(duì)用戶輸入的賬戶和密碼進(jìn)行核對(duì)。因?yàn)椴⒉皇撬械墓芾韱T都

32、能夠有這個(gè)權(quán)利,所以在SQL語句中應(yīng)體現(xiàn)惟一性的條件,樣式層所要調(diào)用的類是ActionForm,跟用戶登錄時(shí)調(diào)用的actionForm是同一個(gè)類,在這里就不做介紹了。 1.總管理員的登錄操作 登錄方法主要用于系統(tǒng)管理員進(jìn)行系統(tǒng)維護(hù)時(shí),作為登錄后臺(tái)時(shí)密碼驗(yàn)證之用。在用戶輸入用戶賬號(hào)和密碼之后,調(diào)用該方法即可驗(yàn)證該用戶是否合法。單擊“總管理員設(shè)置”超鏈接,進(jìn)入到總管理員設(shè)置頁面,實(shí)現(xiàn)此超鏈接的jsp代碼如下: /*********************************** left_main.jsp*********************************/ 總管理員設(shè)置 總管理員頁面的運(yùn)行結(jié)果如圖所示。 總管理員頁面運(yùn)行結(jié)果 單擊“請(qǐng)輸入賬戶”和“請(qǐng)輸入密碼”的文本框,輸入賬戶及密碼,最后單擊【提交】按鈕,界面右側(cè)自動(dòng)顯示管理員的全部信息。如下圖1.8所示。 更改總管理員密碼: 單擊【更改總管理員密碼】按鈕,界面右側(cè)自動(dòng)顯示相關(guān)的界面,如圖所示。 更改總管理員密碼 單擊“請(qǐng)輸入原來的密碼”文本框,輸入密

34、碼,單擊【提交】按鈕,系統(tǒng)彈出如圖1.10所示的界面,單擊“請(qǐng)輸入新密碼”及“請(qǐng)?jiān)俅屋斎胄旅艽a”文本框,兩次輸入相同的新密碼,最后單擊【提交】按鈕,系統(tǒng)彈出修改成功的提示信息即完成修改操作。 總管理員頁面所對(duì)應(yīng)的jsp頁面代碼如下: /********************************* adminPassword.jsp******************************/

35、rder="2" cellspacing="3" cellpadding="3">

36、

請(qǐng)輸入帳戶:
請(qǐng)輸入密碼:
   
在上面的jsp頁面代碼中,action觸發(fā)的是adminAction.do的方法,它與后臺(tái)登錄的方法相似,只是調(diào)用的SQL語句不同。 在持久層中查詢總管理員的方法的代碼如下: 接口類的方法: /********************************* ManagerDao.java**

37、*******************************/ public ManagerActionForm adminCheck(ManagerActionForm managerActionForm) 實(shí)現(xiàn)接口類的方法: /*********************************** ManagerDaoImpl.java***************************/ public ManagerActionForm adminCheck(ManagerActionForm managerActionForm) { ManagerAction

38、Form manager = null; //初始化對(duì)象 JDBConnection connection = new JDBConnection(); String sql = "select * from tb_manager where Name='" + managerActionForm.getManagerName() + "' and mark='" + managerActionForm.getManag

39、erMark() + "'"; try { ResultSet rs = connection.executeQuery(sql); //執(zhí)行查找的方法 while (rs.next()) { manager = new ManagerActionForm(); manager.setManagerPassword(rs.getString(3)); //取出查詢的密碼 } } catch (SQLException ex) {

40、 } connection.close(); //關(guān)閉數(shù)據(jù)庫 return manager; } 在服務(wù)層中實(shí)現(xiàn)持久層的方法如下: 接口類的方法: /******************************* ManagerFacade.java******************************/ public interface ManagerFacade { public ManagerActionForm adminCheck(ManagerActionForm man

41、agerActionForm); } 實(shí)現(xiàn)接口類的方法: /******************************* ManagerFacadeIm.java****************************/ public class ManagerFacadeImpl implements ManagerFacade { private ManagerDao managerDao; public ManagerFacadeImpl() { this.managerDao = new ManagerDaoImpl(); } public

42、ManagerActionForm adminCheck(ManagerActionForm managerActionForm) { return this.managerDao.adminCheck(managerActionForm); //調(diào)用持久層的方法 } } 具體在控制層的代碼如下: /******************************* ManagerDaoImpl.jsp******************************/ package com.victor.webtier.managerAction; i

43、mport org.apache.struts.action.*; import javax.servlet.http.*; import com.victor.domain.ManagerActionForm; import com.victor.service.ManagerFacade; import com.victor.service.ManagerFacadeImpl; //核對(duì)總管理員帳號(hào)和密碼 public class AdminCheckAction extends Action { private ManagerFacade managerFac

44、ade; public AdminCheckAction() { this.managerFacade = new ManagerFacadeImpl(); } public ActionForward perform(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { ManagerActionForm managerActionFor

45、m = (ManagerActionForm) actionForm; managerActionForm.setManagerName(httpServletRequest.getParameter("Name"));//從頁面上取值 managerActionForm.setManagerMark("總管理員"); //取固定的名稱 ManagerActionForm manager = this.managerFacade.adminCheck(managerActionForm); if (manager == null) {

46、 //if判斷,做比較 return actionMapping.findForward("adminWrong"); } else if (!manager.getManagerPassword().equals(httpServletRequest.getParameter("adminPassWord"))) { return actionMapping.findForward("adminWrong"); } return actionMapping.findForward("adminRight");

47、 } } 上面的類文件中加載了ManagerActionForm類,這個(gè)類是屬于ActionForm類,相當(dāng)于JavaBean,在這里主要實(shí)現(xiàn)進(jìn)行取值和賦值的功能。 struts-config.xml的配置的代碼如下: /********************************* struts-config.xml********************************/ <

49、forward name="adminRight" path="/adminSelectAction.do" /> 如果用戶輸入的總管理員的賬戶和密碼不正確,此時(shí)jsp頁面中將提示用戶密碼不正確。實(shí)現(xiàn)此功能的jsp代碼如下: /****************************** adminPasswordFail .jsp******************************/ <%@ page contentType="text/html; charset=GBK" %>

50、 adminPasswordFail

密碼不正確

2秒種后從新輸入密碼

2.對(duì)普通管理員的操作 總管理員登錄成功后,系統(tǒng)將對(duì)除了總管理員以外的所

51、有普通管理員進(jìn)行查詢操作。此時(shí)頁面運(yùn)行結(jié)果如圖所示。 總管理員查詢功能 單擊相應(yīng)管理員后面的【修改密碼】按鈕即可進(jìn)行密碼的修改。具體的操作方法同“更改總管理員密碼”的操作方法相同。 添加新的管理員: 單擊【添加新的管理員】按鈕,界面右側(cè)自動(dòng)顯示相關(guān)的界面, 管理員注冊(cè) 單擊“請(qǐng)輸入賬號(hào)”文本框,輸入相應(yīng)的賬號(hào),單擊【提交】按鈕,系統(tǒng)自動(dòng)顯示如圖所示的界面,單擊“密碼”及“真實(shí)姓名”文本框,輸入密碼及姓名,最后單擊【提交】按鈕,系統(tǒng)彈出注冊(cè)成功的提示信息即管理員添加成功。 持久層的查詢代碼如下: 接口類的代碼: /********************

52、************ ManagerDao.java*********************************/ package com.victor.dao; import java.util.List; import com.victor.domain.ManagerActionForm; public interface ManagerDao { public List managerSelect(ManagerActionForm managerActionForm); //在接口類的查詢方法方法 } 實(shí)現(xiàn)接口類的代碼: /**************

53、***************** ManagerDaoImpl.java******************************/ //查出所有的管理員 public List managerSelect(ManagerActionForm managerActionForm) { JDBConnection connection = new JDBConnection(); //調(diào)用連接數(shù)據(jù)庫的方法 List list = new ArrayList(); //定義一個(gè)List容器的對(duì)象,去實(shí)現(xiàn)ArrayList()中

54、的方法 String sql = "select * from tb_manager where mark='" + managerActionForm.getManagerMark() + "'"; //有條件的查詢語句 try { ResultSet rs = connection.executeQuery(sql); //調(diào)用JDBConnection查詢的方法 while (rs.next()) { ManagerActionForm manager = new Man

55、agerActionForm(); manager.setManagerID(Integer.valueOf(rs.getString(1))); manager.setManagerName(rs.getString(2)); manager.setManagerPassword(rs.getString(3)); manager.setManagerRealName(rs.getString(4)); manager.setManagerIssueDate(rs.getStri

56、ng(5)); manager.setManagerMark(rs.getString(6)); list.add(manager); //l利用對(duì)象list的add()方法把查出來的數(shù)據(jù)放在List容器中 } connection.close(); //關(guān)閉數(shù)據(jù)庫 } catch (SQLException ex) { } return list; //返回值要與方法的類型要一致

57、 } 服務(wù)層的查詢代碼如下: 接口類的代碼: /********************************* ManagerFacade.java****************************/ public interface ManagerFacade { public List managerSelect(ManagerActionForm managerActionForm); } 實(shí)現(xiàn)接口類的代碼: /******************************** ManagerFacade.java*********************

58、********/ public class ManagerFacadeImpl implements ManagerFacade { private ManagerDao managerDao; public ManagerFacadeImpl() { this.managerDao = new ManagerDaoImpl(); } public List managerSelect(ManagerActionForm managerActionForm) { return this.managerDao.managerSelect(manag

59、erActionForm); //利用對(duì)象managerDao調(diào)用持久層的方法 } } 控制層實(shí)現(xiàn)的代碼如下: /*********************************ManagerFacade.java****************************/ package com.victor.webtier.managerAction; import org.apache.struts.action.*; import javax.servlet.http.*; import com.victor.domain.ManagerActionForm;

60、 import com.victor.service.ManagerFacade; import com.victor.service.ManagerFacadeImpl; import java.io.UnsupportedEncodingException; //加載所需要的類 //總管理員全部查看信息 public class AdminSelectAction extends Action { private ManagerFacade managerFacade; public AdminSelectAction() {

61、 this.managerFacade = new ManagerFacadeImpl(); } public ActionForward perform(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { ManagerActionForm managerActionForm = (ManagerActionForm) acti

62、onForm; managerActionForm.setManagerMark("普通管理員"); httpServletRequest.setAttribute("listAdminSelect",managerFacade.managerSelect(managerActionForm)); return actionMapping.findForward("adminSelectAction"); } } struts-config.xml的配置: /******************************* struts-confi

63、g.xml*********************************/

64、管理員查詢jsp代碼的實(shí)現(xiàn): /**********************************adminSelect.jsp*******************************/ <%@ page contentType="text/html; charset=GBK" %> <%@ page import="java.util.List"%> <%@ page import="java.sql.*"%> <%@ page import="com.victor.domain.ManagerActionForm"%> 查看</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>65、全部信息 <%List adminList=(List)request.getAttribute("listAdminSelect");%>

66、

查看全部信息

<%for(int i=0;i
數(shù)據(jù)庫ID 帳號(hào) 真實(shí)姓名 注冊(cè)時(shí)間 管理員類別 操作
<%=managerActionForm.getManagerID()%>
展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!

五月丁香婷婷狠狠色,亚洲日韩欧美精品久久久不卡,欧美日韩国产黄片三级,手机在线观看成人国产亚洲