版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 畢業(yè)設(shè)計(jì)(論文)</b></p><p> 題目:基于Java新聞發(fā)布系統(tǒng) </p><p> 摘要:隨著計(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)
2、發(fā)布新聞信息,所以使得對(duì)信息的管理更加及時(shí)、高效,提高了工作效率</p><p> 關(guān)鍵詞:Struts組建編程模型、樣式層、持久層、服務(wù)層、控制層。</p><p> Abstract: With the rapid development of computer technology, database technology of the Internet is applied m
3、ore and more widely, for the majority of Internet users with a more thoughtful and human services. Personalized has gradually become the current Web application. The use of JSP technology news site management system, rea
4、lize the dynamic management of the news site, because the dynamic can be used to publish news and information, it makes the management of information more timely, efficien</p><p> Keywords: The Struts progr
5、amming model, style layer, persistence layer, service,control layer.</p><p><b> 目錄</b></p><p><b> 引言- 1 -</b></p><p> 第一章 系統(tǒng)分析- 2 -</p><p>
6、; 1.1 需求分析- 2 -</p><p> 1.2 可行性分析- 2 -</p><p> 1.3 硬件配置- 3 -</p><p> 第二章 總體設(shè)計(jì)- 4 -</p><p> 2.1項(xiàng)目規(guī)劃- 4 -</p><p> 2.2界面設(shè)計(jì)- 4 -</p><p&
7、gt; 2.3系統(tǒng)功能結(jié)構(gòu)圖- 4 -</p><p> 第三章 系統(tǒng)設(shè)計(jì)- 6 -</p><p> 3.1設(shè)計(jì)目標(biāo)- 6 -</p><p> 3.2開(kāi)發(fā)及運(yùn)行環(huán)境- 6 -</p><p> 3.3邏輯結(jié)構(gòu)設(shè)計(jì)- 6 -</p><p> 3.4文件命名規(guī)則- 8 -</p>
8、<p> 第四章 網(wǎng)站總體架構(gòu)- 10 -</p><p> 4.1網(wǎng)站首頁(yè)的運(yùn)行結(jié)果- 10 -</p><p> 4.2類的分布- 11 -</p><p> 4.3新聞?lì)愋凸芾? 12 -</p><p> 4.3.1新聞詳細(xì)類型管理- 13 -</p><p> 4.3.2
9、新聞信息管理- 13 -</p><p> 4.3.3連接管理- 15 -</p><p> 第五章 網(wǎng)站前臺(tái)主要功能模塊設(shè)計(jì)- 17 -</p><p> 5.1今日新聞的顯示- 17 -</p><p> 5.1.1持久層的新聞顯示方法- 17 -</p><p> 5.1.2服務(wù)層的新聞顯示
10、方法- 18 -</p><p> 5.1.3 控制層的新聞顯示方法- 18 -</p><p> 5.2 輸入新聞的關(guān)鍵字查找新聞- 19 -</p><p> 第六章 網(wǎng)站前后主要功能模塊設(shè)計(jì)- 21 -</p><p> 6.1后臺(tái)登錄模塊設(shè)計(jì)- 21 -</p><p> 6.1.1 樣式
11、層的類- 21 -</p><p> 6.1.2 持久層的類- 22 -</p><p> 6.1.3 服務(wù)層的類- 22 -</p><p> 6.1.4 管理員登錄控制層的方法- 23 -</p><p> 6.1.5 管理員登錄jsp頁(yè)面說(shuō)明- 24 -</p><p> 6.2管理員模塊設(shè)計(jì)
12、- 24 -</p><p> 6.2.1 管理員登錄操作- 24 -</p><p> 6.2.2 管理員查詢操作- 26 -</p><p> 6.2.3 修改條件查詢操作- 27 -</p><p> 6.2.4 管理員更改密碼操作- 28 -</p><p> 6.2.5 普通管理員操作-
13、 29 -</p><p> 6.2.6添加新的管理員- 29 -</p><p> 6.3總結(jié)- 30 -</p><p> 結(jié)束語(yǔ)- 31 -</p><p> 致 謝- 32 -</p><p> 參考文獻(xiàn)- 33 -</p><p><b> 引言<
14、/b></p><p> Internet的蓬勃發(fā)展,使新聞的傳播方式發(fā)生了巨大的變化,傳統(tǒng)的信息傳播媒體電視、廣播、報(bào)紙已經(jīng)不再是人們茶余飯后的主要精神甜點(diǎn),人們更多的開(kāi)始關(guān)注網(wǎng)絡(luò)新聞。由于互聯(lián)網(wǎng)所容納的信息量大、內(nèi)容豐富、信息及時(shí)、準(zhǔn)確,更有相關(guān)信息的全面的介紹與比較,大大地方便了人們的閱讀,因此在短短幾年的時(shí)間里,互聯(lián)網(wǎng)便濟(jì)身于眾多媒體之間,并具有相當(dāng)一部分媒體人群。借此東風(fēng),新聞網(wǎng)也迅速發(fā)展起來(lái),
15、它內(nèi)容豐富,涉及到商業(yè)、工業(yè)、農(nóng)業(yè)、銀行、財(cái)政、教育、娛樂(lè)、信息等各個(gè)產(chǎn)業(yè),信息量大,不僅有實(shí)事新聞,還有相關(guān)的行業(yè)信息,同時(shí)新聞網(wǎng)具有互聯(lián)網(wǎng)所具備的一切特性。在全球網(wǎng)絡(luò)化、信息化的今天,新聞網(wǎng)迅速發(fā)展,大大地豐富了人們的生活,不知不覺(jué)中,它已經(jīng)成為人們生活中不可或缺的重要組成部分。</p><p><b> 第一章 系統(tǒng)分析</b></p><p><b&
16、gt; 1.1 需求分析</b></p><p> 通過(guò)相關(guān)調(diào)查,要求網(wǎng)站具有以下功能;</p><p> 通過(guò)網(wǎng)絡(luò),展示各行業(yè)新聞及相關(guān)信息。</p><p><b> 提供新聞搜索功能。</b></p><p> 設(shè)置新聞人物投票功能,并統(tǒng)計(jì)投票數(shù)量。</p><p>
17、 支持其他網(wǎng)站的友情鏈接。</p><p> 為后臺(tái)管理提供管理入口。</p><p><b> 1.2 可行性分析</b></p><p><b> 當(dāng)今時(shí)代背景</b></p><p> 因特網(wǎng)在中國(guó)的發(fā)展速度已經(jīng)超乎人們的想象,人們已經(jīng)從一開(kāi)始覺(jué)得網(wǎng)絡(luò)遙不可及到現(xiàn)在轉(zhuǎn)變?yōu)轭l繁從網(wǎng)絡(luò)獲取
18、信息。表明隨著計(jì)算機(jī)技術(shù)的日漸成熟,其強(qiáng)大的功能已經(jīng)為人們深刻認(rèn)識(shí),它已經(jīng)在人類社會(huì)個(gè)個(gè)領(lǐng)域發(fā)揮著越來(lái)越重要的作用。</p><p> 因特網(wǎng)也沖擊著傳統(tǒng)的傳媒,已有調(diào)查報(bào)告指出:60%的人已經(jīng)習(xí)慣從網(wǎng)上獲取新聞等及時(shí)的信息,20%的人發(fā)覺(jué)自己看電視的時(shí)間減少了。相比電視和報(bào)紙,人們更愿意花更多的時(shí)間在網(wǎng)上沖浪。</p><p><b> 開(kāi)發(fā)本項(xiàng)目的必要性</b>
19、;</p><p> 結(jié)合當(dāng)今的時(shí)代背景,網(wǎng)絡(luò)上人們最關(guān)心的是事實(shí)新聞消息的及時(shí)公布和及時(shí)的刷新新聞頁(yè)面,讓網(wǎng)絡(luò)的消息速度總是搶在其他媒介之前。因此,網(wǎng)絡(luò)新聞方面存在很多的市場(chǎng)。我們應(yīng)開(kāi)發(fā)一套結(jié)合時(shí)代的新聞開(kāi)發(fā)系統(tǒng),搶占市場(chǎng)。本系統(tǒng)并不單純的是發(fā)布新聞,它可以應(yīng)用于各種領(lǐng)域,可變?yōu)橥ㄖ陌l(fā)布,公告的發(fā)布。例如政府的信息透明化工程;校園內(nèi)部網(wǎng)站的學(xué)校公告頁(yè)面;甚至可以是結(jié)合到任意一個(gè)網(wǎng)站中,充當(dāng)其功能的一部分。還
20、可以提供例如廣告等附帶服務(wù),獲取更大的利益。</p><p> 使用JAVA開(kāi)發(fā)本項(xiàng)目的可行性</p><p> JAVA語(yǔ)言的各種特點(diǎn):簡(jiǎn)單的語(yǔ)法、完全面向?qū)ο蟮臋C(jī)制、跨平臺(tái)、完善的技術(shù)體系等等使它在企業(yè)應(yīng)用、網(wǎng)絡(luò)的應(yīng)用程序的開(kāi)發(fā)等領(lǐng)域都占據(jù)主導(dǎo)地位。</p><p><b> 1.3 硬件配置</b></p><p
21、> (1) 硬件設(shè)備及操作系統(tǒng)</p><p> ?、俜?wù)器:Pentium4以上配置的高性能PC機(jī),內(nèi)存應(yīng)在256M以上,硬盤(pán)在40G以上。確認(rèn)該計(jì)算機(jī)已經(jīng)安裝數(shù)據(jù)庫(kù)軟件Jdk1.6及Myeclipse。</p><p> ?、诓僮飨到y(tǒng):Windows 9x/Me、Windows 2000、Windows XP、Windows NT,分辨率:1024*768。</p>
22、<p> ?、劭蛻舳耍篜entium233(或與此相當(dāng)?shù)腃PU)以上配置的PC機(jī),內(nèi)存應(yīng)在32M以上,硬盤(pán)在1G以上。Windows 9x以上操作系統(tǒng)。確認(rèn)已安裝BDE。</p><p> (2) 開(kāi)發(fā)平臺(tái)前臺(tái)開(kāi)發(fā)工具:Myeclipse</p><p> ?、偾芭_(tái)開(kāi)發(fā)工具:Myeclipse</p><p> ?、诤笈_(tái)數(shù)據(jù)庫(kù):SQL2005<
23、/p><p><b> 第二章 總體設(shè)計(jì)</b></p><p><b> 2.1項(xiàng)目規(guī)劃</b></p><p> 新聞網(wǎng)是一個(gè)功能完善的新聞?lì)惥W(wǎng)站,由客戶前臺(tái)新聞瀏覽和后臺(tái)新聞管理兩大部分組成。</p><p><b> 前臺(tái)功能模塊</b></p>&
24、lt;p> 前臺(tái)主要包括新聞分類、顯示新聞詳細(xì)信息、新聞信息查詢、新聞人物投票、友情鏈接、提供后臺(tái)登錄口。</p><p><b> 后臺(tái)管理模塊</b></p><p> 后臺(tái)主要包括后臺(tái)總管理員設(shè)置及密碼修改、添加管理員、管理員信息設(shè)置、新聞?lì)愋凸芾?、新聞詳?xì)類型管理、新聞信息管理、鏈接管理、新聞人物管理、退出后臺(tái)。</p><p&
25、gt;<b> 2.2界面設(shè)計(jì)</b></p><p> 界面總體風(fēng)格與系統(tǒng)其他界面是一致的,體現(xiàn)出流行的IE游覽器界面形式,突出新聞網(wǎng)站辦公的特點(diǎn)。</p><p> 便于管理員進(jìn)行操作。程序管理首頁(yè)、分頁(yè)面如下:</p><p> 管理首頁(yè)顯示所有操作對(duì)象,包括管理新聞、管理廣告、管理編輯。點(diǎn)擊管理首頁(yè)的一級(jí)欄目,出現(xiàn)分頁(yè)面的二級(jí)欄
26、目和三級(jí)欄目,點(diǎn)擊三級(jí)欄目,出現(xiàn)主操作頁(yè)面。</p><p> 2.3系統(tǒng)功能結(jié)構(gòu)圖</p><p> 新聞發(fā)布系統(tǒng)前臺(tái)功能結(jié)構(gòu),如圖1所示。</p><p> 圖1 新聞網(wǎng)前臺(tái)功能結(jié)構(gòu)圖</p><p> 新聞網(wǎng)后臺(tái)功能結(jié)構(gòu),如圖2所示</p><p> 圖2 新聞網(wǎng)后臺(tái)功能結(jié)構(gòu)圖</p>
27、<p><b> 第三章 系統(tǒng)設(shè)計(jì)</b></p><p><b> 3.1設(shè)計(jì)目標(biāo)</b></p><p> 本網(wǎng)站是根據(jù)各行業(yè)新聞信息分類進(jìn)行開(kāi)發(fā)設(shè)計(jì)的,主要實(shí)現(xiàn)如下目標(biāo):</p><p> 分類展示各行業(yè)新聞。</p><p> 顯示新聞的詳細(xì)信息。</p>
28、<p> 設(shè)置新聞搜索功能模塊。</p><p> 設(shè)置新聞人物投票及投票數(shù)統(tǒng)計(jì)功能。</p><p> 提供其他網(wǎng)站的友情鏈接。</p><p> 3.2開(kāi)發(fā)及運(yùn)行環(huán)境</p><p><b> 硬件平臺(tái):</b></p><p> CPU:P41.8GHz;</p
29、><p> 內(nèi)存:256MB以上。</p><p><b> 軟件平臺(tái):</b></p><p> 操作系統(tǒng):Windows 2000;</p><p> 數(shù)據(jù)庫(kù):SQL Server 2000;</p><p> 開(kāi)發(fā)工具包:JDK Version1.4.1;</p><
30、;p> Web服務(wù)器:Tomcat;</p><p> 瀏覽器:IE5.0,推薦使用IE6.0;</p><p> 分辨率:最佳效果1024*768像素</p><p><b> 3.3邏輯結(jié)構(gòu)設(shè)計(jì)</b></p><p> 本系統(tǒng)數(shù)據(jù)庫(kù)采用SQL server 2000數(shù)據(jù)庫(kù),系統(tǒng)數(shù)據(jù)庫(kù)名稱為db_ne
31、ws。數(shù)據(jù)庫(kù)db_news中包含7張表。關(guān)于數(shù)據(jù)庫(kù)中的數(shù)據(jù)表請(qǐng)參見(jiàn)附錄B</p><p> (1)tb_Link(鏈接其他網(wǎng)站表)</p><p> 鏈接其他網(wǎng)站表主要用于保存其他網(wǎng)站信息。表tb_Link的結(jié)構(gòu)如表B.1所示。</p><p> 表B.1 表tb_Link的結(jié)構(gòu)</p&g
32、t;<p> ?。?)manager(后臺(tái)管理員設(shè)置表)</p><p> 后臺(tái)管理員設(shè)置表主要用于保存后臺(tái)管理員信息。表manager的結(jié)構(gòu)如表B.2所示。</p><p> 表B.2 表manager的結(jié)構(gòu)</p><p> ?。?)tb_news(新聞管理表)</p>
33、<p> 新聞管理表主要用于保存各類新聞信息內(nèi)容。表tb_news的結(jié)構(gòu)如表B.3所示。</p><p> 表B.3 表tb_news的結(jié)構(gòu)</p><p> ?。?)tb_newsType(新聞?lì)悇e表)</p><p> 新聞?lì)悇e表主要用于保存新聞?lì)悇e信息。表tb_newsType的結(jié)構(gòu)
34、如表B.4所示。</p><p> 表B.4 tb_newsType的結(jié)構(gòu)</p><p> ?。?)tb_Vote(新聞人物投票表)</p><p> 新聞人物投票表主要用于保存新聞人物投票信息。表tb_Vote的結(jié)構(gòu)如表B.5所示。</p><p> 表B.5
35、 表tb_Vote的結(jié)構(gòu)</p><p><b> 3.4文件命名規(guī)則</b></p><p><b> 文件命名規(guī)則:</b></p><p> 文件命名必須指明模塊名,文件用途,如xwfb_mbbj_tjmb.java(新聞發(fā)布-模版編輯-添加模版)。<
36、;/p><p><b> 文件命名規(guī)則:</b></p><p> 以最少的字母達(dá)到最容易理解的意義。</p><p> ?。?)每一個(gè)目錄中應(yīng)該包含一個(gè)缺省的html文件,文件名統(tǒng)一用index.html。</p><p> ?。?)文件名稱統(tǒng)一用小寫(xiě)的字母、數(shù)字和下劃線的組合。</p><p>
37、; ?。?)盡量按單詞的英語(yǔ)翻譯為名稱,結(jié)合漢語(yǔ)拼音的聲母組合。</p><p> ?。?)在每個(gè)功能模塊的文件夾下都必須有以下文件夾: </p><p> public 本功能模塊公用的JSP文件</p><p> script 本功能模塊公用的客戶端函數(shù)文件</p><p&g
38、t; images 本功能模塊圖片文件</p><p> style 本功能模塊CSS樣式表文件</p><p> ?。?)在根目錄和每個(gè)文件夾下都必須有一個(gè)說(shuō)明該目錄下文件和文件夾用途的文本文件:該目錄名稱+下劃線+name,例如在流程管理文件夾下命名為lcgl_name.txt。</p><p><b> ?。?)標(biāo)簽設(shè)計(jì):</b>&l
39、t;/p><p> 標(biāo) 簽 參 數(shù) 描 述 類 型</p><p> [NewsId] 無(wú) 新聞編號(hào) 新聞</p><p> [NewsTitle,x] x(數(shù)字;表示調(diào)用多少個(gè)字\0不限制) 新聞標(biāo)題 新聞</p><p> [NewsTime] 無(wú) 新聞添加時(shí)間 新聞</p><p> [NewsConten
40、t,x] x(數(shù)字;表示調(diào)用多少個(gè)字\0不限制) 新聞內(nèi)容 新聞</p><p> [NewsKeyword] 無(wú) 新聞關(guān)鍵字 新聞</p><p> [ProgramId] 無(wú) 欄目編號(hào) 欄目</p><p> [ProgramName] 無(wú) 欄目名稱 欄目</p><p> [Adyer,x] x(數(shù)字;廣告編號(hào)) 廣告 廣告&l
41、t;/p><p> [News,x,y,z] x(數(shù)字;欄目號(hào))y(數(shù)字;調(diào)用新聞條數(shù))z(字符串;顯示內(nèi)容) 新聞 </p><p> 第四章 網(wǎng)站總體架構(gòu)</p><p> 4.1網(wǎng)站首頁(yè)的運(yùn)行結(jié)果</p><p> 網(wǎng)站前臺(tái)首頁(yè)的運(yùn)行結(jié)果如圖5所示</p><p> 圖5 網(wǎng)站前臺(tái)首頁(yè)運(yùn)行結(jié)果</
42、p><p> 網(wǎng)站框架圖說(shuō)明如下:</p><p> 表`1 網(wǎng)站前臺(tái)首頁(yè)頁(yè)面說(shuō)明</p><p> 網(wǎng)站后臺(tái)首頁(yè)的運(yùn)行結(jié)果如圖6所示。</p><p> 圖6 網(wǎng)站后臺(tái)首頁(yè)運(yùn)行結(jié)果</p><p> 網(wǎng)站后臺(tái)首頁(yè)中的各部分說(shuō)明如表2所示</
43、p><p> 表2 網(wǎng)站后臺(tái)首頁(yè)頁(yè)面說(shuō)明</p><p><b> 4.2類的分布</b></p><p> 新聞發(fā)布系統(tǒng)是利用Struts框架實(shí)現(xiàn)的,新聞發(fā)布系統(tǒng)中類的分布如圖7所示</p><p><b> 圖7 類的分布</b>
44、;</p><p> 類存放的文件夾功能如表3所示</p><p> 表3 類存放的文件夾功能列表</p><p><b> 4.3新聞?lì)愋凸芾?lt;/b></p><p> 單擊【新聞?lì)愋凸芾怼堪粹o,界面右側(cè)自動(dòng)顯示相關(guān)的界面,如圖1.14所示。</p
45、><p> 圖1.14 新聞?lì)愋凸芾?查看全部新聞?lì)悇e</p><p><b> ?。?)添加類別名稱</b></p><p> 單擊【添加類別名稱】按鈕,系統(tǒng)自動(dòng)彈出如圖1.15所示的界面,單擊“名稱”的文本框,輸入相應(yīng)的名稱,最后單擊【提交】按鈕即添加成功。</p><p> 圖1.15 添加類別名稱</
46、p><p> ?。?)修改及刪除類別名稱</p><p> 單擊相應(yīng)類別名稱后面的【修改】按鈕,在系統(tǒng)彈出的界面中單擊“名稱”文本框即可進(jìn)行修改,最后單擊【提交】按鈕即修改成功。</p><p> 單擊相應(yīng)類別名稱后面的【刪除】按鈕,系統(tǒng)彈出的提示信息進(jìn)行確認(rèn)后即刪除成功。</p><p> 4.3.1新聞詳細(xì)類型管理</p>
47、<p> 單擊【新聞詳細(xì)類型管理】按鈕,界面右側(cè)自動(dòng)顯示相關(guān)的界面,如圖1.16所示。</p><p> 圖1.16 新聞詳細(xì)類型管理</p><p> 新聞詳細(xì)類別的添加、修改及刪除和新聞?lì)愋凸芾淼牟僮鞣椒ㄏ嗤@里不作重復(fù)講解,請(qǐng)參照1.2.5新聞?lì)愋凸芾怼?lt;/p><p> 4.3.2新聞信息管理</p><p>
48、 單擊【新聞信息管理】按鈕,界面右側(cè)自動(dòng)顯示相關(guān)的界面,如圖1.17所示。</p><p> 圖1.17 新聞信息管理</p><p><b> 添加新聞</b></p><p> 單擊【添加新聞】按鈕,系統(tǒng)彈出如圖1.18所示的界面,單擊任意一種新聞?lì)愋停纯蛇M(jìn)入如圖1.19所示的信息添加界面。</p><p&g
49、t; 圖1.18 新聞?lì)愋瓦x擇界面</p><p> 圖1.19 添加新聞</p><p> 單擊“新聞標(biāo)題”和“新聞內(nèi)容”文本框,輸入相應(yīng)的標(biāo)題及內(nèi)容,單擊“詳細(xì)類別”下拉按鈕,選擇相應(yīng)的類別,最后單擊【提交】按鈕即添加成功。</p><p> (2)查看、修改及刪除新聞</p><p> 單擊相應(yīng)信息后的【查看新聞具體內(nèi)容】
50、按鈕,可顯示新聞的具體內(nèi)容。</p><p> 單擊相應(yīng)信息后的【修改】按鈕,在彈出的界面中單擊各文本框即可進(jìn)行修改,最后單擊【提交】按鈕即修改成功。</p><p> 單擊相應(yīng)信息后的【刪除】按鈕,系統(tǒng)彈出的提示信息進(jìn)行確認(rèn)后即刪除成功。</p><p><b> 4.3.3連接管理</b></p><p>
51、單擊【鏈接管理】按鈕,界面右側(cè)自動(dòng)顯示相關(guān)的界面,如圖1.20所示。</p><p> 圖1.20 鏈接管理</p><p><b> ?。?)添加連接信息</b></p><p> 單擊【添加鏈接信息】按鈕,系統(tǒng)自動(dòng)進(jìn)入如圖1.21所示的界面。</p><p> 圖1.21 添加鏈接</p>&
52、lt;p> 單擊“鏈接網(wǎng)站名稱”及“鏈接的地址”文本框,輸入鏈接的網(wǎng)站名稱及地址,最后單擊【提交】按鈕即添加成功。</p><p><b> 修改及刪除連接信息</b></p><p> 單擊相應(yīng)網(wǎng)站名稱后的【修改】按鈕,在系統(tǒng)彈出的界面中單擊各文本框,進(jìn)行修改之后單擊【提交】按鈕即修改成功。</p><p> 單擊相應(yīng)網(wǎng)站名稱后
53、的【刪除】按鈕,系統(tǒng)彈出的提示信息進(jìn)行確認(rèn)后即刪除成功。</p><p> 第五章 網(wǎng)站前臺(tái)主要功能模塊設(shè)計(jì)</p><p> 5.1今日新聞的顯示</p><p> 這個(gè)功能就是當(dāng)天的新聞的查看,主要用到了sql語(yǔ)句中的select語(yǔ)句,查詢的條件是以時(shí)間為主,所用到的actionForm是后臺(tái)新聞中的樣式層的代碼。</p><p>
54、; 5.1.1持久層的新聞顯示方法</p><p> 取系統(tǒng)時(shí)間的方法很多,可以通過(guò)類中的java.util.Date的對(duì)象取系統(tǒng)時(shí)間,也可以通過(guò)sql語(yǔ)句中的getDate()方法取時(shí)間。具體的代碼如下:</p><p> DeleteNewsAction.java****************************/</p><p> public
55、class NewsDaoImpl implements NewsDao {</p><p><b> //當(dāng)天新聞的查找</b></p><p> public List dateNews() {</p><p> JDBConnection connection = new JDBConnection();</p>&l
56、t;p> NewsActionForm newsForm = null;</p><p> List list = new ArrayList();</p><p> java.util.Date datetime = new java.util.Date();</p><p> int year=datetime.getYear()+1900;
57、 </p><p> int month=datetime.getMonth() +1; </p><p> String date = "" + year + "-" + month+</p><p> "-" + datetime.getDate() + &qu
58、ot; "+00+":"+00+":"+00+"";</p><p> String sql = "select * from tb_news where IssDate between '"+date+"' and getDate()";</p><p> R
59、esultSet rs = connection.executeQuery(sql); //執(zhí)行查詢的sql語(yǔ)句,返回到結(jié)果集中</p><p><b> try {</b></p><p> while (rs.next()) {</p><p> newsForm = new NewsActionForm();&
60、lt;/p><p> newsForm.setNewID(Integer.valueOf(rs.getString(1)));</p><p> newsForm.setNewTitle(rs.getString(2));</p><p> newsForm.setNewContent(rs.getString(3));</p><p>
61、 newsForm.setNewsType(rs.getString(4));</p><p> newsForm.setNewsStyle(rs.getString(5));</p><p> newsForm.setNewIssueDate(rs.getString(6)); //按順序取字段中的數(shù)據(jù)</p><p> list.
62、add(newsForm);</p><p><b> } }</b></p><p> catch (NumberFormatException ex) {</p><p><b> }</b></p><p> catch (SQLException ex) {</p>
63、<p><b> }</b></p><p> return list;</p><p><b> }</b></p><p><b> }</b></p><p> 5.1.2服務(wù)層的新聞顯示方法</p><p> public
64、class NewsFacadeImpl implements NewsFacade {</p><p> private NewsDao newsDao;</p><p> public NewsFacadeImpl() {</p><p> this.newsDao = new NewsDaoImpl(); //實(shí)現(xiàn)的方法</p&g
65、t;<p><b> }</b></p><p> public List dateNews() {</p><p> return this.newsDao.dateNews(); //調(diào)用持久層的方法</p><p><b> }</b></p><p>
66、;<b> }</b></p><p> 5.1.3 控制層的新聞顯示方法</p><p> package com.victor.frontStage.newsAction;</p><p> import org.apache.struts.action.*;</p><p> import javax.s
67、ervlet.http.*;</p><p> import com.victor.service.NewsFacadeImpl;</p><p> import com.victor.service.NewsFacade;</p><p> import java.util.List;</p><p> public class D
68、ateNews extends Action {</p><p> private NewsFacade newsFacade;</p><p> public DateNews() {</p><p> this.newsFacade = new NewsFacadeImpl(); </p><p><b>
69、 }</b></p><p> public ActionForward perform(ActionMapping actionMapping,ActionForm actionForm,</p><p> HttpServletRequest httpServletRequest,HttpServletResponse httpServletResponse) {&l
70、t;/p><p> List list=this.newsFacade.dateNews(); //調(diào)用服務(wù)層的方法</p><p> httpServletRequest.setAttribute("listNew",list); //創(chuàng)建sql值對(duì)象</p><p> return actionMapping.fin
71、dForward("dateNews");</p><p><b> }</b></p><p><b> }</b></p><p> 5.2 輸入新聞的關(guān)鍵字查找新聞</p><p> 關(guān)鍵字查找新聞就是在文本框中輸入新聞的相關(guān)內(nèi)容,執(zhí)行SQL語(yǔ)句,查找相關(guān)新聞信息,
72、其中的下拉列表框是一個(gè)查詢的動(dòng)作,實(shí)現(xiàn)過(guò)程與前面的后臺(tái)新聞相似,這里就不做介紹了。新聞查找運(yùn)行結(jié)果如圖20所示</p><p> 圖20 關(guān)鍵字查詢</p><p> 關(guān)鍵字查找新聞控制層代碼實(shí)現(xiàn)如下:</p><p> package com.victor.frontStage.newsAction;</p><p> impor
73、t org.apache.struts.action.*;</p><p> import javax.servlet.http.*;</p><p> import com.victor.domain.NewsActionForm;</p><p> import com.victor.service.NewsFacade;</p><p
74、> import com.victor.service.NewsFacadeImpl;</p><p> import com.victor.tool.Chinese;</p><p> import java.util.List;</p><p> //以新聞?lì)愋秃托侣勵(lì)}目的模糊查詢進(jìn)行的前臺(tái)操作</p><p> publ
75、ic class KeyNewsWatch extends Action {</p><p> private NewsFacade newsFacade;</p><p> public KeyNewsWatch() {</p><p> this.newsFacade = new NewsFacadeImpl();</p><p>
76、<b> }</b></p><p> public ActionForward perform(ActionMapping actionMapping,ActionForm actionForm,</p><p> HttpServletRequest httpServletRequest,HttpServletResponse httpServletResp
77、onse) {</p><p> Chinese chinese = new Chinese();</p><p> NewsActionForm newsActionForm = (NewsActionForm) actionForm;</p><p> String key = chinese.str(httpServletRequest.getParam
78、eter("key")); //取得新聞的關(guān)鍵字</p><p> newsActionForm.setNewsType(chinese.str(httpServletRequest.getParameter(</p><p> "type")));
79、//取得新聞的類型</p><p> List list = this.newsFacade.keyNewsWatch(key, newsActionForm);</p><p> httpServletRequest.setAttribute("listContent", list);</p><p> return actionMapp
80、ing.findForward("keyNewsWatch");</p><p><b> }</b></p><p><b> }</b></p><p> 第六章 網(wǎng)站前后主要功能模塊設(shè)計(jì)</p><p> 6.1后臺(tái)登錄模塊設(shè)計(jì)</p><p&
81、gt; 在新聞發(fā)布系統(tǒng)中,后臺(tái)管理員分為兩種:一個(gè)是普通管理員,他可以對(duì)新聞?lì)愋瓦M(jìn)行定義,也可以發(fā)布新聞、設(shè)置投票人數(shù)及網(wǎng)站鏈接;另一個(gè)是總管理員,他除了可操作以上功能外,還可以對(duì)普通管理員進(jìn)行設(shè)置,總管理員和普通管理員都能通過(guò)后臺(tái)登錄頁(yè)面登錄后臺(tái)。</p><p> 在前臺(tái)單擊“進(jìn)入后臺(tái)”超鏈接,即可進(jìn)入到后臺(tái)登錄頁(yè)面,如圖8所示</p><p><b> 圖8 后臺(tái)登錄
82、頁(yè)面</b></p><p> 6.1.1 樣式層的類</p><p><b> 代碼如下:</b></p><p> package com.victor.domain;</p><p> import org.apache.struts.action.*;</p><p>
83、 public class ManagerActionForm extends ActionForm {</p><p> private Integer managerID; //在數(shù)據(jù)庫(kù)中的流水號(hào)</p><p> private String managerIssueDate; //管理員添加日期</p><p> private Str
84、ing managerMark; //管理員的標(biāo)示</p><p> private String managerName; //管理員帳號(hào)</p><p> private String managerPassword; //管理員密碼</p><p> private String managerRealName; //管理員的真
85、實(shí)姓名</p><p> private String managerType; //管理員的權(quán)限 </p><p> public ManagerActionForm() {</p><p> this.managerID = new Integer( -1);</p><p> this.managerIssueDa
86、te = "";</p><p> this.managerMark = "";</p><p> this.managerName = "";</p><p> this.managerPassword = "";</p><p> this.manag
87、erRealName = "";</p><p> this.managerType = "";</p><p><b> }</b></p><p> public Integer getManagerID() { </p><p> return managerID;&
88、lt;/p><p><b> }</b></p><p> public void setManagerID(Integer managerID) {</p><p> this.managerID = managerID;</p><p><b> }</b></p><p
89、> 6.1.2 持久層的類</p><p> 驗(yàn)證輸入的內(nèi)容是否正確有很多方法,筆者采用的是利用sql語(yǔ)句的方法進(jìn)行驗(yàn)證輸入賬號(hào)和密碼,對(duì)輸入的賬號(hào)及密碼判斷是否正確。</p><p><b> 代碼如下:</b></p><p> public class ManagerDaoImpl implements ManagerDao
90、 { //實(shí)現(xiàn)接口類中的方法用implements加上接口類名</p><p> public ManagerActionForm managerCheck(ManagerActionForm managerActionForm) { </p><p> ManagerActionForm manager = null; 定義一個(gè)Object型的數(shù)據(jù),
91、初使化為null</p><p> JDBConnection connection = new JDBConnection(); //連接數(shù)據(jù)庫(kù)的方法</p><p> String sql = "select * from tb_manager where Name='" + managerActionForm.getManagerName() + &
92、quot;'"; </p><p><b> try {</b></p><p> ResultSet rs = connection.executeQuery(sql); // 把sql語(yǔ)句傳到JDBConnection類中去</p><p> while (rs.next()) {</p>
93、<p> manager = new ManagerActionForm(); </p><p> manager.setManagerPassword(rs.getString(3)); //查找過(guò)所需要的字段數(shù)據(jù)</p><p><b> }</b></p><p><b> }</
94、b></p><p> catch (SQLException ex) {</p><p><b> }</b></p><p> connection.close();</p><p> return manager; //把對(duì)象返回到方法中去</p><p><b>
95、; }</b></p><p><b> }</b></p><p> 6.1.3 服務(wù)層的類</p><p><b> 代碼如下:</b></p><p> ManagerFacadeImpl.java**************************/</p>
96、<p> public class ManagerFacadeImpl implements ManagerFacade { //實(shí)現(xiàn)接口類的方法用implements</p><p> private ManagerDao managerDao;</p><p> public ManagerFacadeImpl() {</p><p&
97、gt; this.managerDao = new ManagerDaoImpl(); //實(shí)現(xiàn)dao類的方法。</p><p><b> }</b></p><p> public ManagerActionForm managerCheck(ManagerActionForm managerActionForm) {</p>&
98、lt;p> return this.managerDao.managerCheck(managerActionForm); //調(diào)用持久層的方法</p><p><b> }</b></p><p><b> }</b></p><p> 6.1.4 管理員登錄控制層的方法</p>&l
99、t;p><b> 代碼如下:</b></p><p> package com.victor.webtier.managerAction;</p><p><b> //核對(duì)帳號(hào)和密碼</b></p><p> public class ManagerCheckAction extends Action {&
100、lt;/p><p> private ManagerFacade managerFacade;</p><p> public ManagerCheckAction() {</p><p> this.managerFacade = new ManagerFacadeImpl();</p><p><b> }</b>
101、;</p><p> public ActionForward perform(ActionMapping actionMapping, ActionForm actionForm,</p><p> HttpServletRequest httpServletRequest,HttpServletResponse httpServletResponse) {</p>&
102、lt;p> Chinese chinese = new Chinese();</p><p> ManagerActionForm managerActionForm = (ManagerActionForm) actionForm;</p><p> managerActionForm.setManagerName(chinese.str(httpServletRequest
103、.</p><p> getParameter("managerName")));</p><p> ManagerActionForm manager = this.managerFacade.managerCheck(managerActionForm);</p><p> //通過(guò)對(duì)象調(diào)用方法</p><p>
104、 if (manager == null) {</p><p> return actionMapping.findForward("managerWrong");//通過(guò)manager是空值的話,返回錯(cuò)誤頁(yè)面。</p><p><b> }</b></p><p> else if (!manager.getMan
105、agerPassword().equals(httpServletRequest.getParameter( "managerPassWord")))</p><p><b> {</b></p><p> return actionMapping.findForward("managerWrong");//查找的值與在js
106、p頁(yè)面中的值不一致,返回錯(cuò)誤頁(yè)面。</p><p><b> }</b></p><p> return actionMapping.findForward("managerRight"); //查找的值與在jsp頁(yè)面中的值一致,返回正確頁(yè)面。</p><p><b> }</b></p&
107、gt;<p><b> }</b></p><p> 6.1.5 管理員登錄jsp頁(yè)面說(shuō)明</p><p> <p>管理員登陸</p></p><p> <p> </p></p><p> <form name="f
108、orm" method="post" action="../../managerCheckAction.do" ></p><p> <table width="287" height="77" border="2" cellpadding="3" cellspacing
109、="3"></p><p><b> <tr></b></p><p> <td width="90" height="32"><span >帳號(hào):</span></td></p><p> <td widt
110、h="168"><input type="text" name="managerName"></td></p><p><b> </tr></b></p><p><b> <tr></b></p><p&g
111、t; <td height="32"><span >密碼:</span></td></p><p> <td><input type="password" name="managerPassWord"></td></p><p><b&g
112、t; </tr></b></p><p><b> </table></b></p><p> <input type="submit" name="Submit2" value="提交"></p><p>
113、 </p><p> <input type="reset" name="Submit" value="重置"></p><p><b> </form></b></p><p> 6.2管理員模塊
114、設(shè)計(jì)</p><p> 管理員在數(shù)據(jù)庫(kù)中是惟一的,總管理員的信息在頁(yè)面中不會(huì)顯示出來(lái),在此頁(yè)面中只能修改自己的密碼及對(duì)普通管理員進(jìn)行設(shè)置。</p><p> 用戶單擊“總管理員設(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)用
115、的actionForm是同一個(gè)類。</p><p> 6.2.1 管理員登錄操作</p><p> 登錄方法主要用于系統(tǒng)管理員進(jìn)行系統(tǒng)維護(hù)時(shí),作為登錄后臺(tái)時(shí)密碼驗(yàn)證之用。在用戶輸入用戶賬號(hào)和密碼之后,調(diào)用該方法即可驗(yàn)證該用戶是否合法。擊“總管理員設(shè)置”超鏈接,進(jìn)入到總管理員設(shè)置頁(yè)面方法如下:</p><p> 單擊【總管理員設(shè)置】按鈕,界面右側(cè)自動(dòng)顯示相關(guān)的界
116、面,如圖1.7所示。</p><p> 圖1.7 總管理員設(shè)置</p><p> 單擊“請(qǐng)輸入賬戶”和“請(qǐng)輸入密碼”的文本框,輸入賬戶及密碼,最后單擊【提交】按鈕,界面右側(cè)自動(dòng)顯示管理員的全部信息。如下圖1.8所示。</p><p> 圖1.8 查看全部信息</p><p> 單擊相應(yīng)管理員后面的【修改】按鈕,在系統(tǒng)彈出的更改管理
117、員性質(zhì)的界面中即可進(jìn)行修改,最后單擊【修改】按鈕即完成修改操作。</p><p> 單擊相應(yīng)管理員后面的【刪除】按鈕,系統(tǒng)彈出的提示框進(jìn)行確認(rèn)后即刪除該管理員信息。</p><p> 總管理員頁(yè)面所對(duì)應(yīng)的jsp頁(yè)面代碼如下:</p><p> /********************************* adminPassword.jsp*******
118、***********************/</p><p> <form name="form" method="post" action="../../../adminAction.do" "></p><p> <table width="382" border=&qu
119、ot;2" cellspacing="3" cellpadding="3"></p><p><b> <tr></b></p><p> <td width="110">請(qǐng)輸入帳戶:</td></p><p> <td
120、width="243"><input type="text" name="Name"></td></p><p><b> </tr></b></p><p><b> <tr></b></p><p>
121、 <td width="110">請(qǐng)輸入密碼:</td></p><p> <td width="243"><input type="password" name="adminPassWord"></td></p><p><b> &l
122、t;/tr></b></p><p><b> </table></b></p><p> <input type="submit" name="Submit" value="提交"></p><p> &nb
123、sp; </p><p> <input type="reset" name="Submit2" value="重置"></p><p><b> </form></b></p><p> 在上面的jsp頁(yè)面代碼中,action觸發(fā)的是a
124、dminAction.do的方法,它與后臺(tái)登錄的方法相似,只是調(diào)用的SQL語(yǔ)句不同。</p><p> 6.2.2 管理員查詢操作</p><p> 總管理員登錄成功后,系統(tǒng)將對(duì)除了總管理員以外的所有普通管理員和其他的一些信息進(jìn)行查詢操作。此時(shí)頁(yè)面運(yùn)行結(jié)果如圖10所示。</p><p> 圖10 總管理員查詢其他管理員功能</p><p&
125、gt; 圖 11總管理員查詢查看新聞人物</p><p> 總管理員對(duì)其他管理員查詢的代碼如下:</p><p><b> 實(shí)現(xiàn)接口類的代碼:</b></p><p> /******************************* ManagerDaoImpl.java******************************/&
126、lt;/p><p> //查出所有的管理員</p><p> public List managerSelect(ManagerActionForm managerActionForm) {</p><p> JDBConnection connection = new JDBConnection(); //調(diào)用連接數(shù)據(jù)庫(kù)的方法</p><
127、p> List list = new ArrayList(); //定義一個(gè)List容器的對(duì)象,去實(shí)現(xiàn)ArrayList()中的方法</p><p> String sql = "select * from tb_manager where mark='" +</p><p> managerActionForm.
溫馨提示
- 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. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 新聞發(fā)布系統(tǒng)畢業(yè)論文
- 新聞發(fā)布系統(tǒng)畢業(yè)論文
- 新聞發(fā)布系統(tǒng)(畢業(yè)論文)
- 畢業(yè)論文——新聞發(fā)布系統(tǒng)
- 新聞發(fā)布系統(tǒng)畢業(yè)論文
- 新聞發(fā)布系統(tǒng)畢業(yè)論文
- 畢業(yè)論文——新聞發(fā)布系統(tǒng)
- 新聞發(fā)布系統(tǒng)畢業(yè)論文
- 畢業(yè)論文——基于web的學(xué)校新聞發(fā)布系統(tǒng)
- 畢業(yè)論文——基于web的學(xué)校新聞發(fā)布系統(tǒng)
- 畢業(yè)論文——基于web的學(xué)校新聞發(fā)布系統(tǒng)
- 基于web的校園新聞發(fā)布系統(tǒng)畢業(yè)論文
- 畢業(yè)論文——新聞發(fā)布及管理系統(tǒng)
- 朱先輝--畢業(yè)論文(新聞發(fā)布系統(tǒng))
- 畢業(yè)論文(設(shè)計(jì))-基于web的學(xué)校新聞發(fā)布系統(tǒng)
- 畢業(yè)論文(設(shè)計(jì))基于web的學(xué)校新聞發(fā)布系統(tǒng)
- 畢業(yè)論文(設(shè)計(jì))基于web的校園新聞發(fā)布系統(tǒng)
- asp.net新聞發(fā)布系統(tǒng)畢業(yè)論文
- 新聞發(fā)布系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文
- asp.net新聞發(fā)布系統(tǒng)畢業(yè)論文
評(píng)論
0/150
提交評(píng)論