《新聞發(fā)布系統(tǒng)》論文.doc
《《新聞發(fā)布系統(tǒng)》論文.doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《《新聞發(fā)布系統(tǒng)》論文.doc(45頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、 分類號(hào) 編 號(hào) 華北水利水電學(xué)院 實(shí)訓(xùn)報(bào)告 題目 新聞發(fā)布系統(tǒng) 院 、 系 軟件職業(yè)技術(shù)學(xué)院 專 業(yè) 軟件技術(shù) 姓 名 張浩然 學(xué) 號(hào) 200917534 指導(dǎo)教師 李永強(qiáng) 44 摘要【摘要】隨著計(jì)算機(jī)科學(xué)的發(fā)展,數(shù)據(jù)庫(kù)技術(shù)在Internet中的應(yīng)用越來(lái)越廣泛,為廣大網(wǎng)絡(luò)用戶提供了更加周到和人性化的服務(wù)。個(gè)性化已逐漸成為當(dāng)今Web應(yīng)用的潮流。利用JSP技術(shù)開(kāi)發(fā)的網(wǎng)站新聞管理系統(tǒng),實(shí)現(xiàn)了網(wǎng)站新聞的動(dòng)態(tài)管理,因?yàn)榭梢杂脕?lái)動(dòng)態(tài)發(fā)布新聞信息,所以使得對(duì)信息的管理更加及時(shí)、高效,提高了工作效率?!娟P(guān)鍵詞】Struts組建編程模型、ActionForm的說(shuō)明、樣式層、持久層、服務(wù)層、控制層。目錄摘要10
2、 引言31 系統(tǒng)分析41.1 需求分析41.2 可行性分析42 總體設(shè)計(jì)42.1 項(xiàng)目規(guī)劃42.2 系統(tǒng)功能結(jié)構(gòu)圖43 系統(tǒng)設(shè)計(jì)53.1 設(shè)計(jì)目標(biāo)53.2 開(kāi)發(fā)及運(yùn)行環(huán)境53.3 邏輯結(jié)構(gòu)設(shè)計(jì)54 網(wǎng)站總體架構(gòu)64.1 文件布局64.2 網(wǎng)站首頁(yè)的運(yùn)行結(jié)果64.2 類的分布85 網(wǎng)站后臺(tái)主要功能模塊設(shè)計(jì)85.1 后臺(tái)登錄模塊設(shè)計(jì)85.2 總管理員設(shè)置模塊設(shè)計(jì)115.3 更改總管理員密碼模塊設(shè)計(jì)235.4 新聞信息管理275.5 總結(jié)326 網(wǎng)站前臺(tái)主要功能模塊設(shè)計(jì)326.1 今日新聞的顯示326.2 輸入新聞的關(guān)鍵字查找新聞346.3 新聞人物的查看和投票367 小結(jié)39附錄一 參考文獻(xiàn)40附
3、錄二 數(shù)據(jù)表41附錄三 文件架構(gòu)圖430 引言21世紀(jì)的特征是數(shù)字化、網(wǎng)絡(luò)化和信息化,它是一個(gè)以數(shù)據(jù)庫(kù)技術(shù)為核心的信息時(shí)代。而隨著信息技術(shù)的發(fā)展,報(bào)社行業(yè)也成為一個(gè)高度依賴信息業(yè)的行業(yè)。信息技術(shù)的飛速發(fā)展不僅使新聞工作者逐漸擺脫了繁重的手工勞動(dòng)、提高了工作效率,而且推著報(bào)社行業(yè)向現(xiàn)代化管理邁進(jìn)。現(xiàn)代化的新聞發(fā)布系統(tǒng)也應(yīng)該有現(xiàn)代化的管理系統(tǒng)。在科技日益發(fā)達(dá)的今天,人們對(duì)新聞更加重視。因此,新聞發(fā)布進(jìn)行現(xiàn)代化管理就變的尤為重要。數(shù)據(jù)庫(kù)是數(shù)據(jù)管理的最新技術(shù),是計(jì)算機(jī)科學(xué)的重要分支。今天,信息資源已成為各個(gè)部門(mén)的重要財(cái)富,建立一個(gè)滿足新聞發(fā)布信息處理要求的行之有效的信息系統(tǒng)也成為一個(gè)報(bào)社發(fā)展的重要條件
4、。新聞發(fā)布系統(tǒng),它是報(bào)社管理系統(tǒng)的一部分,其作用是對(duì)所有新聞進(jìn)行有效的管理。通過(guò)本系統(tǒng)不僅可以進(jìn)行新聞發(fā)布工作,而且還可以對(duì)和新聞相對(duì)應(yīng)的人員情況進(jìn)行查詢,并可隨時(shí)進(jìn)行增加,修改,刪除等工作,使工作人員能夠有效地對(duì)新聞進(jìn)行有效的控制和管理。因此,通過(guò)新聞發(fā)布系統(tǒng),使新聞工作系統(tǒng)化,規(guī)范化,自動(dòng)化,從而大大提高了新聞發(fā)布工作的效率。1 系統(tǒng)分析1.1 需求分析通過(guò)相關(guān)調(diào)查,要求網(wǎng)站具有以下功能;通過(guò)網(wǎng)絡(luò),展示各行業(yè)新聞及相關(guān)信息。提供新聞搜索功能。設(shè)置新聞人物投票功能,并統(tǒng)計(jì)投票數(shù)量。支持其他網(wǎng)站的友情鏈接。為后臺(tái)管理提供管理入口。1.2 可行性分析 利用計(jì)算機(jī)實(shí)現(xiàn)新聞發(fā)布管理勢(shì)在必行。對(duì)于報(bào)社
5、來(lái)說(shuō),利用計(jì)算機(jī)支持管理部門(mén)高效率完成新聞信息管理的日常事務(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)信息準(zhǔn)確無(wú)誤、快速輸出,同時(shí)計(jì)算機(jī)具有手工管理所無(wú)法比擬的優(yōu)點(diǎn),例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)能夠極大地提高新聞管理的效率,也是企業(yè)的科學(xué)化、正規(guī)
6、化管理,與世界接軌的重要條件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ì)類型管理、新聞信息管理、鏈接管理、新聞人物管理、退出后臺(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)后
7、臺(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)行開(kāi)發(fā)設(shè)計(jì)的,主要實(shí)現(xiàn)如下目標(biāo):分類展示各行業(yè)最新新聞狀況。顯示新聞的詳細(xì)信息。設(shè)置新聞搜索功能模塊。設(shè)置新聞人物投票及投票數(shù)統(tǒng)計(jì)功能。提供其他網(wǎng)站的友情鏈接。3.2 開(kāi)發(fā)及運(yùn)行環(huán)境硬件平臺(tái):CPU:P41.8GHz;內(nèi)存:256MB以上。軟件平臺(tái):操作系統(tǒng):Windows xp或者window7;數(shù)據(jù)庫(kù):SQL Server 2000;開(kāi)發(fā)工具包:JDK Version1.4.1;W
8、eb服務(wù)器:Tomcat;瀏覽器:google分辨率:最佳效果1024*768像素。3.3 邏輯結(jié)構(gòu)設(shè)計(jì)本系統(tǒng)數(shù)據(jù)庫(kù)采用SQL server 2000數(shù)據(jù)庫(kù),系統(tǒng)數(shù)據(jù)庫(kù)名稱為db_news。數(shù)據(jù)庫(kù)db_news中包含7張表。關(guān)于數(shù)據(jù)庫(kù)中的數(shù)據(jù)表請(qǐng)參見(jiàn)附錄B4 網(wǎng)站總體架構(gòu)4.1 網(wǎng)站首頁(yè)的運(yùn)行結(jié)果網(wǎng)站前臺(tái)首頁(yè)的運(yùn)行結(jié)果如圖所示。312 網(wǎng)站前臺(tái)首頁(yè)運(yùn)行結(jié)果網(wǎng)站框架圖說(shuō)明如下:表1 網(wǎng)站前臺(tái)首頁(yè)頁(yè)面說(shuō)明區(qū)域名稱說(shuō)明對(duì)應(yīng)文件1網(wǎng)站導(dǎo)航主要展示網(wǎng)站的旗幟廣告和站內(nèi)導(dǎo)航條typeNewWatch.do2功能模塊主要用于顯示導(dǎo)航模塊中的功能linkSelect.do3內(nèi)容顯示主要用于顯示功能模塊中的內(nèi)容
9、dateNews.do?type=今日新聞網(wǎng)站后臺(tái)首頁(yè)的運(yùn)行結(jié)果如圖所示。312 網(wǎng)站后臺(tái)首頁(yè)運(yùn)行結(jié)果網(wǎng)站后臺(tái)首頁(yè)中的各部分說(shuō)明如表2所示。表2 網(wǎng)站后臺(tái)首頁(yè)頁(yè)面說(shuō)明區(qū)域名稱說(shuō)明對(duì)應(yīng)文件1網(wǎng)站導(dǎo)航主要展示網(wǎng)站的旗幟廣告和站內(nèi)導(dǎo)航條typeTopAction.do2功能模塊主要用于顯示導(dǎo)航模塊中的功能left_main.jsp3內(nèi)容顯示主要用于顯示功能模塊中的內(nèi)容right_main.jsp4.2 類的分布新聞發(fā)布系統(tǒng)是利用Struts框架實(shí)現(xiàn)的,新聞發(fā)布系統(tǒng)中類的分布如圖所示。樣式層前臺(tái)控制層服務(wù)層工具層后臺(tái)控制層持久層 類的分布類存放的文件夾功能如表3所示。表3 類存放的文件夾功能列表名稱功
10、能持久層(dao文件夾)各種方法(增加、刪除、修改和查詢)的實(shí)現(xiàn)樣式層(domain文件夾)所存放的類是Actionform類,在類中必須要繼承ActionForm(也就是entends ActionForm)服務(wù)層(server文件夾)存放的dao層功能的業(yè)務(wù)的類控制層(webtier文件夾)存放在jsp頁(yè)面中存在的方法實(shí)現(xiàn)的類工具層(tool文件夾)類名為JDBConnection.java(連接數(shù)據(jù)庫(kù)的功能)、類名為Chinese.java(字符級(jí)轉(zhuǎn)換的類)、類名為SessionLib(用來(lái)存在session變量)5 網(wǎng)站后臺(tái)主要功能模塊設(shè)計(jì)5.1 后臺(tái)登錄模塊設(shè)計(jì)在新聞發(fā)布系統(tǒng)中,后臺(tái)
11、管理員分為兩種:一個(gè)是普通管理員,他可以對(duì)新聞?lì)愋瓦M(jìn)行定義,也可以發(fā)布新聞、設(shè)置投票人數(shù)及網(wǎng)站鏈接;另一個(gè)是超級(jí)管理員,他除了可操作以上功能外,還可以對(duì)普通管理員進(jìn)行設(shè)置,總管理員和普通管理員都能通過(guò)后臺(tái)登錄頁(yè)面登錄后臺(tái),然后對(duì)系統(tǒng)進(jìn)行相應(yīng)的操作。在前臺(tái)單擊“進(jìn)入后臺(tái)”超鏈接,即可進(jìn)入到后臺(tái)登錄頁(yè)面,如圖所示。單擊“賬號(hào)”和“密碼”的文本框,輸入賬號(hào):mr 密碼:*,單擊【提交】按鈕即可進(jìn)入新聞網(wǎng)后臺(tái)界面。 后臺(tái)登錄頁(yè)面1 樣式層的類具體代碼如下/* ManagerActionForm.java*/package com.victor.domain;import org.apache.stru
12、ts.action.*;public class ManagerActionForm extends ActionForm private Integer managerID; /在數(shù)據(jù)庫(kù)中的流水號(hào) private String managerIssueDate; /管理員添加日期 private String managerMark; /管理員的標(biāo)示 private String managerName; /管理員帳號(hào) private String managerPassword; /管理員密碼 private String managerRealName; /管理員的真實(shí)姓名 privat
13、e String managerType; /管理員的權(quán)限 public ManagerActionForm() this.managerID = new Integer( -1); this.managerIssueDate = ; this.managerMark = ; this.managerName = ; this.managerPassword = ; this.managerRealName = ; this.managerType = ; public Integer getManagerID() return managerID; public void setManage
14、rID(Integer managerID) this.managerID = managerID; .2持久層的方法驗(yàn)證輸入的內(nèi)容是否正確有很多方法,筆者采用的是利用sql語(yǔ)句的方法進(jìn)行驗(yàn)證輸入賬號(hào)和密碼。對(duì)輸入的賬號(hào)及密碼判斷是否正確。利用接口類的方法實(shí)現(xiàn)的代碼如下:/* ManagerDao.java*/public interface ManagerDao public ManagerActionForm managerCheck(ManagerActionForm managerActionForm)實(shí)現(xiàn)接口的方法的代碼如下:/* ManagerDaoImpl.java*/核對(duì)普通管
15、理員帳號(hào)和密碼public class ManagerDaoImpl implements ManagerDao /實(shí)現(xiàn)接口類中的方法用implements加上接口類名 public ManagerActionForm managerCheck(ManagerActionForm managerActionForm) ManagerActionForm manager = null; 定義一個(gè)Object型的數(shù)據(jù),初使化為null JDBConnection connection = new JDBConnection(); /連接數(shù)據(jù)庫(kù)的方法 String sql = select * fr
16、om tb_manager where Name= + managerActionForm.getManagerName() + ; try ResultSet rs = connection.executeQuery(sql); / 把sql語(yǔ)句傳到JDBConnection類中去 while (rs.next() manager = new ManagerActionForm(); manager.setManagerPassword(rs.getString(3); /查找過(guò)所需要的字段數(shù)據(jù) catch (SQLException ex) connection.close(); retu
17、rn manager; /把對(duì)象返回到方法中去 3服務(wù)層的方法利用接口類的方法實(shí)現(xiàn)的代碼如下:/* ManagerFacade.java*/public interface ManagerFacade public ManagerActionForm managerCheck(ManagerActionForm managerActionForm)實(shí)現(xiàn)接口的方法的代碼如下:/* ManagerFacadeImpl.java*/public class ManagerFacadeImpl implements ManagerFacade /實(shí)現(xiàn)接口類的方法用implements private
18、ManagerDao managerDao; public ManagerFacadeImpl() this.managerDao = new ManagerDaoImpl(); /實(shí)現(xiàn)dao類的方法。 public ManagerActionForm managerCheck(ManagerActionForm managerActionForm) return this.managerDao.managerCheck(managerActionForm); /調(diào)用持久層的方法 4管理員登陸控制層的方法/* ManagerCheckAction.java*/package com.victo
19、r.webtier.managerAction;/核對(duì)帳號(hào)和密碼public class ManagerCheckAction extends Action private ManagerFacade managerFacade; public ManagerCheckAction() this.managerFacade = new ManagerFacadeImpl(); public ActionForward perform(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServle
20、tRequest,HttpServletResponse httpServletResponse) Chinese chinese = new Chinese(); ManagerActionForm managerActionForm = (ManagerActionForm) actionForm; managerActionForm.setManagerName(chinese.str(httpServletRequest. getParameter(managerName);ManagerActionForm manager = this.managerFacade.managerCh
21、eck(managerActionForm); /通過(guò)對(duì)象調(diào)用方法 if (manager = null) return actionMapping.findForward(managerWrong);/通過(guò)manager是空值的話,返回錯(cuò)誤頁(yè)面。 else if (!manager.getManagerPassword().equals(httpServletRequest.getParameter( managerPassWord)return actionMapping.findForward(managerWrong);/查找的值與在jsp頁(yè)面中的值不一致,返回錯(cuò)誤頁(yè)面。 return
22、 actionMapping.findForward(managerRight); /查找的值與在jsp頁(yè)面中的值一致,返回正確頁(yè)面。 5struts-config.xml中的配置在這里主要配置formBean和action動(dòng)作指向的jsp頁(yè)面。代碼如下:/* struts-config.xml*/ 6管理員登陸jsp頁(yè)面的說(shuō)明/* managerCheck.jsp*/ 管理員登陸 帳號(hào): 密碼: 5.2 總管理員設(shè)置模塊設(shè)計(jì)總管理員在數(shù)據(jù)庫(kù)中是惟一的,總管理員的信息在頁(yè)面中不會(huì)顯示出來(lái),在此頁(yè)面中只能修改自己的密碼及對(duì)普通管理員
23、進(jìn)行設(shè)置。用戶單擊“總管理員設(shè)置”超鏈接,進(jìn)入總管理員設(shè)置頁(yè)面。系統(tǒng)首先對(duì)用戶輸入的賬戶和密碼進(jìn)行核對(duì)。因?yàn)椴⒉皇撬械墓芾韱T都能夠有這個(gè)權(quán)利,所以在SQL語(yǔ)句中應(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è)置頁(yè)面,實(shí)現(xiàn)此超鏈接的jsp代碼如下:/* left_main.jsp*/總管理員設(shè)置總管理員頁(yè)面的運(yùn)行結(jié)果
24、如圖所示。 總管理員頁(yè)面運(yùn)行結(jié)果單擊“請(qǐng)輸入賬戶”和“請(qǐng)輸入密碼”的文本框,輸入賬戶及密碼,最后單擊【提交】按鈕,界面右側(cè)自動(dòng)顯示管理員的全部信息。如下圖1.8所示。更改總管理員密碼:?jiǎn)螕簟靖目偣芾韱T密碼】按鈕,界面右側(cè)自動(dòng)顯示相關(guān)的界面,如圖所示。 更改總管理員密碼單擊“請(qǐng)輸入原來(lái)的密碼”文本框,輸入密碼,單擊【提交】按鈕,系統(tǒng)彈出如圖1.10所示的界面,單擊“請(qǐng)輸入新密碼”及“請(qǐng)?jiān)俅屋斎胄旅艽a”文本框,兩次輸入相同的新密碼,最后單擊【提交】按鈕,系統(tǒng)彈出修改成功的提示信息即完成修改操作??偣芾韱T頁(yè)面所對(duì)應(yīng)的jsp頁(yè)面代碼如下:/* adminPassword.jsp*/ 請(qǐng)輸入帳戶: 請(qǐng)
25、輸入密碼: 在上面的jsp頁(yè)面代碼中,action觸發(fā)的是adminAction.do的方法,它與后臺(tái)登錄的方法相似,只是調(diào)用的SQL語(yǔ)句不同。在持久層中查詢總管理員的方法的代碼如下:接口類的方法:/* ManagerDao.java*/public ManagerActionForm adminCheck(ManagerActionForm managerActionForm)實(shí)現(xiàn)接口類的方法:/* ManagerDaoImpl.java*/ public ManagerActionForm adminCheck(ManagerActionForm ma
26、nagerActionForm) ManagerActionForm manager = null; /初始化對(duì)象JDBConnection connection = new JDBConnection(); String sql = select * from tb_manager where Name= + managerActionForm.getManagerName() + and mark= + managerActionForm.getManagerMark() + ;try ResultSet rs = connection.executeQuery(sql); /執(zhí)行查找的方
27、法 while (rs.next() manager = new ManagerActionForm(); manager.setManagerPassword(rs.getString(3); /取出查詢的密碼 catch (SQLException ex) connection.close(); /關(guān)閉數(shù)據(jù)庫(kù) return manager; 在服務(wù)層中實(shí)現(xiàn)持久層的方法如下:接口類的方法:/* ManagerFacade.java*/public interface ManagerFacade public ManagerActionForm adminCheck(ManagerAction
28、Form managerActionForm);實(shí)現(xiàn)接口類的方法:/* ManagerFacadeIm.java*/public class ManagerFacadeImpl implements ManagerFacade private ManagerDao managerDao; public ManagerFacadeImpl() this.managerDao = new ManagerDaoImpl(); public ManagerActionForm adminCheck(ManagerActionForm managerActionForm) return this.man
29、agerDao.adminCheck(managerActionForm); /調(diào)用持久層的方法 具體在控制層的代碼如下:/* ManagerDaoImpl.jsp*/package com.victor.webtier.managerAction; import org.apache.struts.action.*;import javax.servlet.http.*;import com.victor.domain.ManagerActionForm;import com.victor.service.ManagerFacade;import com.victor.service.Man
30、agerFacadeImpl;/核對(duì)總管理員帳號(hào)和密碼public class AdminCheckAction extends Action private ManagerFacade managerFacade; public AdminCheckAction() this.managerFacade = new ManagerFacadeImpl(); public ActionForward perform(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest,
31、 HttpServletResponse httpServletResponse) ManagerActionForm managerActionForm = (ManagerActionForm) actionForm; managerActionForm.setManagerName(httpServletRequest.getParameter(Name);/從頁(yè)面上取值 managerActionForm.setManagerMark(總管理員); /取固定的名稱 ManagerActionForm manager = this.managerFacade.adminCheck(man
32、agerActionForm); if (manager = null) /if判斷,做比較 return actionMapping.findForward(adminWrong); else if (!manager.getManagerPassword().equals(httpServletRequest.getParameter(adminPassWord) return actionMapping.findForward(adminWrong); return actionMapping.findForward(adminRight); 上面的類文件中加載了ManagerActio
33、nForm類,這個(gè)類是屬于ActionForm類,相當(dāng)于JavaBean,在這里主要實(shí)現(xiàn)進(jìn)行取值和賦值的功能。struts-config.xml的配置的代碼如下:/* struts-config.xml*/ 如果用戶輸入的總管理員的賬戶和密碼不正確,此時(shí)jsp頁(yè)面中將提示用戶密碼不正確。實(shí)現(xiàn)此功能的jsp代碼如下:/* adminPasswordFail .jsp*/ adminPasswordFail 密碼不正確 2秒種后從新輸入密碼2對(duì)普通管理員的操作總管理員登錄成功后,系統(tǒng)將對(duì)除了總管理員以外的所有普通管理員進(jìn)行查詢操作。此時(shí)頁(yè)面運(yùn)行結(jié)果如圖所示。 總管理員查詢功能單擊相應(yīng)管理員后面的【
34、修改密碼】按鈕即可進(jìn)行密碼的修改。具體的操作方法同“更改總管理員密碼”的操作方法相同。添加新的管理員:?jiǎn)螕簟咎砑有碌墓芾韱T】按鈕,界面右側(cè)自動(dòng)顯示相關(guān)的界面, 管理員注冊(cè)單擊“請(qǐng)輸入賬號(hào)”文本框,輸入相應(yīng)的賬號(hào),單擊【提交】按鈕,系統(tǒng)自動(dòng)顯示如圖所示的界面,單擊“密碼”及“真實(shí)姓名”文本框,輸入密碼及姓名,最后單擊【提交】按鈕,系統(tǒng)彈出注冊(cè)成功的提示信息即管理員添加成功。持久層的查詢代碼如下:接口類的代碼:/* ManagerDao.java*/package com.victor.dao;import java.util.List;import com.victor.domain.Manag
35、erActionForm;public interface ManagerDao public List managerSelect(ManagerActionForm managerActionForm); /在接口類的查詢方法方法實(shí)現(xiàn)接口類的代碼:/* ManagerDaoImpl.java*/查出所有的管理員 public List managerSelect(ManagerActionForm managerActionForm) JDBConnection connection = new JDBConnection(); /調(diào)用連接數(shù)據(jù)庫(kù)的方法 List list = new Ar
36、rayList(); /定義一個(gè)List容器的對(duì)象,去實(shí)現(xiàn)ArrayList()中的方法 String sql = select * from tb_manager where mark= + managerActionForm.getManagerMark() + ; /有條件的查詢語(yǔ)句 try ResultSet rs = connection.executeQuery(sql); /調(diào)用JDBConnection查詢的方法 while (rs.next() ManagerActionForm manager = new ManagerActionForm(); manager.setMa
37、nagerID(Integer.valueOf(rs.getString(1); manager.setManagerName(rs.getString(2); manager.setManagerPassword(rs.getString(3); manager.setManagerRealName(rs.getString(4); manager.setManagerIssueDate(rs.getString(5); manager.setManagerMark(rs.getString(6); list.add(manager); /l利用對(duì)象list的add()方法把查出來(lái)的數(shù)據(jù)放在
38、List容器中 connection.close(); /關(guān)閉數(shù)據(jù)庫(kù) catch (SQLException ex) return list; /返回值要與方法的類型要一致 服務(wù)層的查詢代碼如下:接口類的代碼:/* ManagerFacade.java*/public interface ManagerFacade public List managerSelect(ManagerActionForm managerActionForm);實(shí)現(xiàn)接口類的代碼:/* ManagerFacade.java*/public class ManagerFacadeImpl implements Mana
39、gerFacade private ManagerDao managerDao; public ManagerFacadeImpl() this.managerDao = new ManagerDaoImpl(); public List managerSelect(ManagerActionForm managerActionForm) return this.managerDao.managerSelect(managerActionForm); /利用對(duì)象managerDao調(diào)用持久層的方法 控制層實(shí)現(xiàn)的代碼如下:/*ManagerFacade.java*/package com.vic
40、tor.webtier.managerAction;import org.apache.struts.action.*;import javax.servlet.http.*;import com.victor.domain.ManagerActionForm;import com.victor.service.ManagerFacade;import com.victor.service.ManagerFacadeImpl;import java.io.UnsupportedEncodingException; /加載所需要的類/總管理員全部查看信息public class AdminSel
41、ectAction extends Action private ManagerFacade managerFacade; public AdminSelectAction() this.managerFacade = new ManagerFacadeImpl(); public ActionForward perform(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) Mana
42、gerActionForm managerActionForm = (ManagerActionForm) actionForm; managerActionForm.setManagerMark(普通管理員); httpServletRequest.setAttribute(listAdminSelect,managerFacade.managerSelect(managerActionForm); return actionMapping.findForward(adminSelectAction); struts-config.xml的配置:/* struts-config.xml*/ 管理員查詢jsp代碼的實(shí)現(xiàn):/*adminSelect.jsp*/查看全部信息function projectDelete(date)if(confirm(是否刪除這一組數(shù)據(jù)嗎?)window.location=adminDeleteAction.do?managerID=+date; 查看全部信息 數(shù)據(jù)庫(kù)ID 帳號(hào) 真實(shí)姓名 注冊(cè)時(shí)間/t
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識(shí)競(jìng)賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫(kù)試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫(kù)試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫(kù)試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識(shí)測(cè)試題庫(kù)及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測(cè)工種技術(shù)比武題庫(kù)含解析
- 1 礦山應(yīng)急救援安全知識(shí)競(jìng)賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案