2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩29頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  目 錄</b></p><p><b>  摘 要1</b></p><p><b>  第一章 緒論2</b></p><p>  1.1 開發(fā)背景2</p><p>  1.2 開發(fā)工具的選用及介紹2</p><p

2、>  1.2.1 Hibernate2</p><p>  1.2.2 Dreamweaver簡介3</p><p>  1.2.3 Microsoft SQL Server 2000簡介3</p><p>  1.2.4 Struts標簽庫4</p><p>  第二章 系統(tǒng)分析5</p><p> 

3、 2.1 系統(tǒng)目標5</p><p>  2.2 功能需求5</p><p>  2.2.1 功能劃分5</p><p>  2.2.2 系統(tǒng)功能結構圖6</p><p>  2.3 性能需求7</p><p>  2.3.1 數(shù)據(jù)精確度7</p><p>  2.3.2 時間特性

4、7</p><p>  2.3.3 適應性7</p><p>  2.4 軟件屬性需求7</p><p>  2.4.1 正確性7</p><p>  2.4.2 可靠性7</p><p>  2.4.3 效率7</p><p>  2.4.5 完整性7</p><

5、;p>  2.4.6 易使用性7</p><p>  2.4.7 可維護性8</p><p>  2.4.8 可測試性8</p><p>  2.4.9 復用性8</p><p>  2.4.10 安全保密性8</p><p>  2.5 外部接口需求8</p><p>  2

6、.5.1 用戶界面8</p><p>  2.5.2 硬件接口9</p><p>  2.5.3 軟件接口9</p><p>  2.5.4 通信接口9</p><p>  2.5.5 故障處理9</p><p>  第三章 系統(tǒng)設計10</p><p>  3.1 前臺系統(tǒng)架構1

7、0</p><p>  3.2 數(shù)據(jù)庫表設計10</p><p>  3.3 公共模塊設計11</p><p>  3.3.1 編寫獲取系統(tǒng)時間操作類11</p><p>  3.3.2 編寫字符串自動處理類12</p><p>  3.3.3 編寫文件刪除類12</p><p>  

8、3.3.4 編寫Hibernate數(shù)據(jù)庫配置文件13</p><p>  3.3.5 編寫數(shù)據(jù)持久化類14</p><p>  3.4 新聞查詢功能模塊15</p><p>  3.4.1 新聞查詢功能模塊總體架構15</p><p>  3.4.2 新聞功能模塊的ActionForm類與配置文件15</p><

9、p>  3.4.3 首頁面新聞查詢實現(xiàn)過程18</p><p>  3.4.4 新聞關鍵字查詢實現(xiàn)過程18</p><p>  3.4.5 新聞詳細查詢實現(xiàn)過程19</p><p>  3.5 后臺系統(tǒng)架構19</p><p>  3.5.1 后臺首頁面架構19</p><p>  3.6 管理員模塊管

10、理20</p><p>  3.6.1 管理員模塊總體架構20</p><p>  3.6.2 管理員登錄的實現(xiàn)過程21</p><p>  3.7 新聞管理模塊22</p><p>  3.7.1 新聞管理模塊總體架構22</p><p>  3.7.2新聞類別的實現(xiàn)類22</p><

11、p>  3.7.3 新聞類別查詢的實現(xiàn)過程23</p><p>  3.7.4 新聞類別添加的實現(xiàn)過程24</p><p>  3.7.5 新聞查詢的實現(xiàn)過程26</p><p>  3.7.6 新聞添加的實現(xiàn)過程27</p><p><b>  第四章 總結29</b></p><p

12、><b>  致 謝29</b></p><p><b>  參考文獻29</b></p><p><b>  摘 要</b></p><p>  隨著Internet技術的發(fā)展,人們的日常生活已經(jīng)離不開網(wǎng)絡。未來社會人們的生活和工作將越來越依賴于數(shù)字技術的發(fā)展,越來越數(shù)字化、網(wǎng)絡化、

13、電子化、互聯(lián)網(wǎng)在中國逐步普及,人們對網(wǎng)絡的需求也日益增長,利用計算機實現(xiàn)信息的操作勢在必行。當前系統(tǒng)從初步調(diào)查開始,詳細介紹了需求分析、流程和數(shù)據(jù)分析,并進行了系統(tǒng)總體結構設計和數(shù)據(jù)庫設計. 系統(tǒng)采用MyEclipse進行項目開發(fā),SQL SERVER 2000建立數(shù)據(jù)庫,Dreamweaver編寫ajax和javascript腳本程序及css樣式,從界面簡潔實用的角度出發(fā),完成對新聞信息及用戶信息的增、刪、改、查等功能,盡量使之成為一

14、個實用性強的新聞管理系統(tǒng)。</p><p>  關鍵字: Dreamweaver,SQL Server 2000,新聞管理,網(wǎng)絡化 </p><p><b>  第一章 緒論</b></p><p>  當今時代是飛速發(fā)展的信息時代。在各行各業(yè)中離不開信息處理,計算機被廣泛應用于B/S系統(tǒng)環(huán)境。計算機的好處在于它能夠進行信息管理。使用計算機進行

15、信息控制,提高了工作效率.</p><p>  對于復雜的信息管理,計算機能夠充分發(fā)揮它的優(yōu)越性。計算機與信息管理系統(tǒng)的開發(fā)密切相關,系統(tǒng)的開發(fā)是系統(tǒng)管理的前提。當前系統(tǒng)就是為了管理好新聞信息而設計的。 </p><p><b>  1.1 開發(fā)背景</b></p><p>  Internet的蓬勃發(fā)展,使新聞的傳播方式發(fā)生了巨大的變化,傳統(tǒng)

16、的信息傳播媒體電視、廣播、報紙已經(jīng)不再是人們茶余飯后的主要精神甜點,人們更多的開始關注網(wǎng)絡新聞。由于互聯(lián)網(wǎng)所容納的信息量大、內(nèi)容豐富、信息及時、準確,更有相關信息的全面的介紹與比較,大大地方便了人們的閱讀,因此在短短幾年的時間里,互聯(lián)網(wǎng)便濟身于眾多媒體之間,并具有相當一部分媒體人群。借此東風,新聞管理系統(tǒng)也迅速發(fā)展起來,它內(nèi)容豐富,涉及到商業(yè)、工業(yè)、農(nóng)業(yè)、銀行、財政、教育、娛樂、信息等各個產(chǎn)業(yè),信息量大,不僅有實事新聞,還有相關的行業(yè)信

17、息,同時新聞管理系統(tǒng)具有互聯(lián)網(wǎng)所具備的一切特性。在全球網(wǎng)絡化、信息化的今天,新聞管理系統(tǒng)迅速發(fā)展,大大地豐富了人們的生活,不知不覺中,它已經(jīng)成為人們生活中不可或缺的重要組成部分。</p><p>  基于此,建立一個完備的新聞管理系統(tǒng),使人們對新聞信息的分類管理、查閱變得更加方便快捷勢在必行。</p><p>  1.2 開發(fā)工具的選用及介紹</p><p>  1

18、.2.1 Hibernate</p><p>  Hibernate框架是操作數(shù)據(jù)庫的持久化框架,它的值對象本質(zhì)上是持久化對象的前身,也就是說,在Hibernate框架中,值對象就能夠表示一條數(shù)據(jù)表中的記錄。Hibernate之所以是優(yōu)秀的框架,就是在于它所用持久化類的對象其本身是一個簡單Java類的值對象。這樣的有點是在純粹Java類的情況下,持久化累的對象直接就可以在業(yè)務邏輯層和服務器端表示層被使用,不涉及高

19、耦合的問題,因此在業(yè)務邏輯層中只要對值對象進行操作,然后返回這個對象即可。</p><p>  1.2.2 Dreamweaver簡介</p><p>  Dreamweaver是Macromedia公司最新推出的主頁編輯工具。這是一個所見即所得主頁編輯器,并帶有站點管理功能,讓你方便地設計和管理多個站點。而它最棒的地方就是支持最新的DHTML和CSS標準, 你可以用它設計出生動的DHTM

20、L動畫、多層次的頁面(layer)以及CSS樣式表。 </p><p>  1.2.3 Microsoft SQL Server 2000簡介</p><p>  SQL是英文(Structured  Query Language)的縮寫,意思為結構化查詢語言。SQL語言的主要功能就是同各種數(shù)據(jù)庫建立聯(lián)系,進行溝通。SQL被作為關系型數(shù)據(jù)庫管理系統(tǒng)的標準語言。SQL語句可以用來執(zhí)

21、行各種各樣的操作,例如更新數(shù)據(jù)庫中的數(shù)據(jù),從數(shù)據(jù)庫中提取數(shù)據(jù)等。目前,絕大多數(shù)流行的關系型數(shù)據(jù)庫管理系統(tǒng),如Oracle, Sybase, Microsoft SQL Server, Access等都采用了SQL語言標準。</p><p>  SQL語言有以下幾個優(yōu)點:</p><p>  1. 非過程化語言 SQL是一個非過程化的語言,因為它一次處理一個記錄,對數(shù)據(jù)提供自動導航。S

22、QL允許用戶在高層的數(shù)據(jù)結構上工作,而不對單個記錄進行操作,可操作記錄集,所有SQL 語句接受集合作為輸入,返回集合作為輸出。SQL的集合特性允許一條SQL語句的結果作為另一條SQL語句的輸入。</p><p>  SQL不要求用戶指定對數(shù)據(jù)的存放方法, 這種特性使用戶更易集中精力于要得到的結果;所有SQL語句使用查詢優(yōu)化器,它是RDBMS的一部分,由它決定對指定數(shù)據(jù)存取的最快速度的手段,查詢優(yōu)化器知道存在什么索

23、引,在哪兒使用索引合適,而用戶則從不需要知道表是否有索引、有什么類型的索引。</p><p><b>  2. 統(tǒng)一的語言</b></p><p>  SQL可用于所有用戶的DB活動模型,包括系統(tǒng)管理員、數(shù)據(jù)庫管理員、 應用程序員、決策支持系統(tǒng)人員及許多其它類型的終端用戶。基本的SQL 命令只需很少時間就能學會,最高級的命令在幾天內(nèi)便可掌握。</p>&

24、lt;p>  3. 所有關系數(shù)據(jù)庫的公共語言</p><p>  由于所有主要的關系數(shù)據(jù)庫管理系統(tǒng)都支持SQL語言,用戶可將使用SQL的技能從一個RDBMS(關系數(shù)據(jù)庫管理系統(tǒng))轉到另一個,所有用SQL編寫的程序都是可以移植的。</p><p>  1.2.4 Struts標簽庫</p><p>  Struts框架提供了相當強大的標簽庫,根據(jù)這些標簽庫的內(nèi)容

25、,程序員在編寫網(wǎng)頁中的代碼時,可以大大的減少代碼的編寫量,從而使網(wǎng)頁中的代碼更加簡潔。Struts提供了5種標簽庫文件,它們分別為HTML標簽、Bean標簽、Logic標簽、Nested標簽和Title標簽。</p><p><b>  第二章 系統(tǒng)分析</b></p><p><b>  2.1 系統(tǒng)目標</b></p><

26、p>  新聞發(fā)布系統(tǒng)網(wǎng)站實現(xiàn)的功能目標為:</p><p>  1.展示各類別信息;</p><p>  2.提供信息搜索功能;</p><p>  3.設置信息公告查詢;</p><p>  4.設置焦點導讀查詢;</p><p>  5.為后臺管理提供管理入口;</p><p>  6

27、.通過網(wǎng)站的后臺,可以對新聞的各個類別實現(xiàn)不同的操作。必要性分析:</p><p>  新聞發(fā)布系統(tǒng)后臺能夠?qū)W(wǎng)站的新聞作詳細的分類,前臺以分類形式顯示新聞的詳細信息,滿足了用戶瀏覽新聞時分類查看新聞信息的需求,同時提供新聞信息查詢功能,方便用戶快速查找相關的新聞信息,系統(tǒng)后臺通過“管理員設置”和“管理員添加”等模塊對網(wǎng)站管理員進行管理,保證的網(wǎng)站的安全性。</p><p>&

28、lt;b>  2.2 功能需求</b></p><p>  2.2.1 功能劃分</p><p><b>  1.前臺功能模塊</b></p><p>  前臺功能模塊主要包括新聞分類、新聞詳細信息、新聞信息查詢、新聞搜索、信息公告查詢、信息導讀查詢及后臺登入口。</p><p><b>  

29、2.后臺模塊管理</b></p><p>  后臺管理主要包括后臺總管理員設置及密碼修改、添加管理員、管理員信息設置、新聞類型管理、信息公告管理、焦點導讀管理及后臺退出等。</p><p>  2.2.2 系統(tǒng)功能結構圖</p><p>  圖 2-1 系統(tǒng)功能結構圖</p><p>  圖 2-2 后臺功能結構圖</p&g

30、t;<p><b>  2.3 性能需求</b></p><p>  2.3.1 數(shù)據(jù)精確度</p><p>  查詢時應保證查全率,所有相應域包含查詢關鍵字的記錄都應能查到。查詢時應保證查準率,查到的記錄應與給定的單項或組合查詢條件完全匹配。</p><p>  2.3.2 時間特性</p><p>  

31、一般操作的響應時間應在1~2秒內(nèi),對軟磁盤和打印機的操作。</p><p><b>  2.3.3 適應性</b></p><p>  滿足所有用戶使用的需求。對前面提到的運行環(huán)境要求不應存在困難。</p><p>  2.4 軟件屬性需求</p><p><b>  2.4.1 正確性</b>&l

32、t;/p><p>  要求發(fā)布的軟件達到用戶的預期目標,運行時基本無錯誤。</p><p><b>  2.4.2 可靠性</b></p><p>  在一般條件下,應不出故障。</p><p><b>  2.4.3 效率</b></p><p>  對于查詢、增加、刪除、更新

33、和密碼設置等一般操作,要求及時響應,在1~2秒內(nèi)。</p><p><b>  2.4.5 完整性</b></p><p>  要求能在發(fā)生意外的情況下,保證不丟失數(shù)據(jù)。</p><p>  2.4.6 易使用性</p><p>  要求盡量為用戶的使用提供方便,軟件的界面符合目前流行的界面規(guī)范。</p>

34、<p>  2.4.7 可維護性</p><p>  要求本軟件在運行中發(fā)現(xiàn)錯誤時,能快速、準確對其進行定位,診斷和修改。</p><p>  2.4.8 可測試性</p><p>  設計時盡可能減少測試本軟件的各項功能所需的工作量。</p><p><b>  2.4.9 復用性</b></p>

35、<p>  設計時應采取模塊化方法進行設計,對系統(tǒng)內(nèi)各模塊接口盡可能達到高內(nèi)聚、低耦合的程度,以提高各模塊的復用性。</p><p>  2.4.10 安全保密性</p><p>  要求提供身份驗證的用戶使用本軟件。</p><p>  2.5 外部接口需求</p><p>  2.5.1 用戶界面</p>&l

36、t;p>  采用Windows 的通用圖形界面,對用戶友好,且必須對鼠標和鍵盤提供支持,界面的設計應遵循如下規(guī)則:</p><p>  a. 界面友好美觀,可以通過手機下載所需要的服務;</p><p>  b. 具備錯誤處理頁面,出錯時不會使用戶手足無措;</p><p>  c. 設計良好的聯(lián)機幫助;</p><p>  d. 提供

37、可逆反饋,用多種信息提示用戶當前軟件運行狀態(tài)、軟件界面元件的功能;</p><p>  e. 顯示啟動畫面,畫面簡潔明快,富有現(xiàn)代氣息。</p><p><b>  截圖如下:</b></p><p>  圖 2-3 新聞首頁</p><p>  2.5.2 硬件接口</p><p>  支持一般

38、的PentiumⅡ或更高檔微機、筆記本電腦。</p><p>  2.5.3 軟件接口</p><p>  運行于Windows 98/200/NT/XP、且具有WIN32、 API的操作系統(tǒng)之上。</p><p>  2.5.4 通信接口</p><p>  本軟件應提供對電子郵件、Web瀏覽器、電話撥號等的支持。</p>&

39、lt;p>  2.5.5 故障處理</p><p>  正常使用不應出錯,若運行時遇到不可恢復的系統(tǒng)錯誤,也必須保證數(shù)據(jù)庫完好無損</p><p><b>  第三章 系統(tǒng)設計</b></p><p>  3.1 前臺系統(tǒng)架構</p><p>  在新聞系統(tǒng)的前臺首頁中,用戶可以按類別、按今日新聞和按關鍵字查詢新聞

40、。除了對新聞的查看外,還可以對站內(nèi)公告和焦點導讀進行查看。</p><p>  主要界面的各個說明以列表的形式給出。</p><p>  表 3-1 新聞前臺首頁說明</p><p>  3.2 數(shù)據(jù)庫表設計</p><p><b>  表 3-2 公告表</b></p><p>  表 3-3

41、焦點導讀表</p><p>  表 3-4 后臺管理員表</p><p><b>  表 3-5 新聞表</b></p><p>  表 3-6 新聞詳細類別表</p><p>  3.3 公共模塊設計</p><p>  3.3.1 編寫獲取系統(tǒng)時間操作類</p><p>

42、;  當前系統(tǒng)對系統(tǒng)時間操作類的名稱為:TimeShow。該類的主要作用是在后臺管理維護新聞信息時,獲取系統(tǒng)時間來記錄系統(tǒng)數(shù)據(jù)的時間,并且利用系統(tǒng)時間判斷維護的信息是否是最新的數(shù)據(jù)。除了獲取系統(tǒng)時間外,TimeShow類還將系統(tǒng)的時間轉換成格林威治標準時,作為維護數(shù)據(jù)的靜態(tài)頁面的名稱保存在服務器相對應的文件夾中,在新聞前臺頁面中直接調(diào)用該文件夾中的靜態(tài)頁面就可以對新聞的詳細內(nèi)容進行查詢,TimeShow類文件的關鍵代碼如下:</p

43、><p>  package com.tools;</p><p>  import java.text.DateFormat;</p><p>  import java.util.Date;</p><p>  public class TimeShow {</p><p>  public static String

44、 cuttentMonthDate() {</p><p>  Date date = new Date();</p><p>  DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.LONG);</p><p>  return dateFormat.format(date);</p&g

45、t;<p><b>  }</b></p><p>  public static String autoNumber(){</p><p>  Date date= new Date();</p><p>  String autonumber=String.valueOf(date.getTime());</p>

46、<p>  return autonumber+".html";</p><p><b>  }</b></p><p><b>  } </b></p><p>  3.3.2 編寫字符串自動處理類</p><p>  當前系統(tǒng)使用的字符串自動處理類的名稱為Self

47、RequestProcessor,該類繼承了Struts框架中的RequestProcessor類,實現(xiàn)RequestProcessor類中的RequestProcessor()方法,該方法作用是將從form表單中獲取的字符串編碼格式轉換成gb2312。代碼如下:</p><p>  package com.tools;</p><p>  import java.io.Unsupport

48、edEncodingException;</p><p>  import javax.servlet.http.HttpServletRequest;</p><p>  import javax.servlet.http.HttpServletResponse;</p><p>  import org.apache.struts.action.RequestP

49、rocessor;</p><p>  public class SelfRequestProcessor extends RequestProcessor {</p><p>  public SelfRequestProcessor() {</p><p><b>  }</b></p><p>  protecte

50、d boolean processPreprocess(HttpServletRequest request,</p><p>  HttpServletResponse response) {</p><p>  super.processPreprocess(request, response);</p><p><b>  try {</b&g

51、t;</p><p>  request.setCharacterEncoding("gb2312");</p><p>  } catch (UnsupportedEncodingException ex) {</p><p>  ex.printStackTrace();</p><p><b>  }<

52、;/b></p><p>  return true;</p><p><b>  }</b></p><p><b>  }</b></p><p>  3.3.3 編寫文件刪除類</p><p>  當前系統(tǒng)使用的文件刪除類的名稱為FileOperation,在該類

53、中的deleteFile()方法中,實例化File類的對象file,并將filename對象作為該實例化對象的參數(shù),通過file調(diào)用exists()方法,判斷filename對象內(nèi)容是否存在,如果存在將調(diào)用delete()方法執(zhí)行刪除文件的方法。</p><p><b>  代碼:</b></p><p>  package com.tools;</p>

54、<p>  import java.io.File;</p><p>  public class FileOperation</p><p><b>  {</b></p><p>  public static void deleteFile(String filename)</p><p><b&

55、gt;  {</b></p><p>  java.io.File file = new File(filename);</p><p>  if (file.exists())</p><p><b>  }</b></p><p><b>  }</b></p><

56、;p><b>  }</b></p><p>  3.3.4 編寫Hibernate數(shù)據(jù)庫配置文件</p><p>  Hibernate配置文件主要用于配置數(shù)據(jù)庫連接和Hibernate運行時所需的各種屬性。它同時支持XML格式的配置文件和傳統(tǒng)的properties文件配置方式,當前系統(tǒng)采用的是XML型配置文件。XML配置文件提供了更容易的結構和更強的配置能力

57、,可以直接對映射文件加以配置并由Hibernate自動加載。而在properties文件中則無法做到這點,必須在程序中通過編碼進行映射文件的加載。代碼如下:</p><p>  <?xml version='1.0' encoding='UTF-8'?></p><p>  <!DOCTYPE hibernate-configuration

58、</p><p>  public "-//Hibernate/Hibernate Configuration DTD//EN"</p><p>  "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"></p><p>  <hibe

59、rnate-configuration></p><p>  <session-factory></p><p>  <property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect </property></p><p>

60、  <property name="connection.driver_class">com.microsoft.jdbc.sqlserver.SQLServerDriver</property></p><p>  <property name="connection.url">jdbc:microsoft:sqlserver://lo

61、calhost:1433;DatabaseName=db_wyNews</property></p><p>  <property name="connection.username">sa</property></p><p>  <property name="connection.password"&

62、gt;</property></p><p>  <property name="show_sql">false</property></p><p>  <mapping resource="com/actionForm/SortForm.hbm.xml"/></p><p>

63、  <mapping resource="com/actionForm/NewsForm.hbm.xml"/></p><p>  <mapping resource="com/actionForm/AfficheForm.hbm.xml"/></p><p>  <mapping resource="com/

64、actionForm/ForceForm.hbm.xml"/></p><p>  <mapping resource="com/actionForm/ManagerForm.hbm.xml"/></p><p>  </session-factory></p><p>  </hibernate-c

65、onfiguration></p><p>  3.3.5 編寫數(shù)據(jù)持久化類</p><p>  當前系統(tǒng)是一個數(shù)據(jù)庫持久化類的名稱為ObjectDao。開發(fā)當前系統(tǒng)使用了Hibernate框架和Struts框架整合技術,在編寫書庫持久化類的代碼中,分別定義了SessionFactory類、Session類和Transaction類的屬性,之后通過靜態(tài)方法取得對數(shù)據(jù)庫的鏈接操作,最后

66、根據(jù)鏈接對象分別實現(xiàn)對數(shù)據(jù)表的添加、修改、刪除、和查詢操作。具體代碼如下:public class ObjectDao<T> {</p><p>  private static SessionFactory sessionFactory ;</p><p>  private static Session session = null;</p><p&g

67、t;  Transaction tx = null;</p><p><b>  static {</b></p><p><b>  try {</b></p><p>  Configuration config = new Configuration().configure();</p><p&

68、gt;  sessionFactory = config.buildSessionFactory();</p><p>  } catch (Exception e) {</p><p>  //System.out.println("ffffffffffff");</p><p>  System.out.println(e.getMessag

69、e());</p><p><b>  }</b></p><p><b>  }</b></p><p>  3.4 新聞查詢功能模塊</p><p>  3.4.1 新聞查詢功能模塊總體架構</p><p>  ◆ 網(wǎng)站首頁中的新聞查詢:用于在網(wǎng)站的首頁中,查詢部分新聞標

70、題的功能。</p><p>  ◆ 按大類別查詢新聞和今日新聞查看:用于按大類別查詢新聞和今日新聞查詢的功能。</p><p>  ◆ 按關鍵字查詢新聞:用于按關鍵字查詢新聞。</p><p>  ◆ 新聞的詳細查詢:用于對新聞內(nèi)容的詳細查詢。</p><p>  3.4.2 新聞功能模塊的ActionForm類與配置文件</p>

71、<p>  新聞查詢模塊中主要涉及到兩個方面的ActionForm類:一個是新聞小類別的ActionForm與相應的配置文件;另一個是新聞的ActionForm類相應的配置文件。</p><p>  在新聞小類別功能模塊中,涉及的數(shù)據(jù)表是新聞小類別信息表(tb_sort)。在新聞小類別信息表中保存著小類別的名稱和創(chuàng)建時間等內(nèi)容,根據(jù)這些信息創(chuàng)建小類別信息的ActionForm名稱為“SortForm

72、.java”關鍵代碼如下:</p><p>  package com.actionForm;</p><p>  import org.apache.struts.action.*;</p><p>  public class SortForm extends ActionForm {</p><p>  private String b

73、igSort="";//大類別名稱</p><p>  private int id=-1;//自動編號</p><p>  private String smallSort="";//小類別名稱</p><p>  private String createTime=""; //創(chuàng)建時間&l

74、t;/p><p>  public SortForm(){}</p><p>  public String getBigSort() {</p><p>  return bigSort;</p><p><b>  }</b></p><p>  public void setBigSort(St

75、ring bigSort) {</p><p>  this.bigSort = bigSort;</p><p>  public void setSmallSort(String smallSort) {</p><p>  this.smallSort = smallSort;</p><p><b>  }</b>

76、;</p><p>  public void setId(int id) {</p><p>  this.id = id;</p><p><b>  }</b></p><p>  public void setCreateTime(String createTime) {</p><p>

77、  this.createTime = createTime;</p><p><b>  }</b></p><p>  public int getId() {</p><p>  return id;</p><p>  新聞功能模塊的ActionForm類與配置文件</p><p>  在

78、新聞查詢功能模塊中,涉及的數(shù)據(jù)表是新聞信息表(tb_news)。在新聞信息表中保存著新聞題目、新聞主要內(nèi)容及新聞發(fā)布時間等內(nèi)容,根據(jù)這些信息創(chuàng)建新聞信息的ActionForm名稱為“NewsForm.java”,關鍵代碼如下:</p><p>  package com.actionForm;</p><p>  import javax.servlet.http.*;</p>

79、<p>  import org.apache.struts.action.*;</p><p>  public class NewsForm extends ActionForm {</p><p>  private int id=-1;</p><p>  private int sortId=-1;</p><p> 

80、 private String content="";</p><p>  private String createTime="";</p><p>  private String bigSort=""; </p><p>  private String title="";<

81、/p><p>  private String showNews="";</p><p>  public String getContent() {</p><p>  return content;</p><p><b>  }</b></p><p>  public St

82、ring getShowNews()</p><p><b>  {</b></p><p>  return showNews;</p><p><b>  }</b></p><p>  public void setShowNews(String showNews)</p>&l

83、t;p><b>  {</b></p><p>  this.showNews = showNews;</p><p><b>  }</b></p><p>  public void setContent(String content) {</p><p>  this.content =

84、 content;</p><p><b>  }</b></p><p>  public void setTitle(String title) {</p><p>  this.title = title;</p><p><b>  }</b></p><p>  p

85、ublic void setCreateTime(String createTime) {</p><p>  this.createTime = createTime;</p><p><b>  }</b></p><p>  public void setId(int id) {</p><p>  this.id

86、 = id;</p><p><b>  }</b></p><p>  public void setSortId(int sortId) {</p><p>  this.sortId = sortId;</p><p><b>  }</b></p><p>  pub

87、lic void setBigSort(String bigSort) {</p><p>  this.bigSort = bigSort;</p><p><b>  }</b></p><p>  public String getCreateTime() {</p><p>  return createTime

88、;</p><p><b>  }</b></p><p>  public String getTitle() {</p><p>  return title;</p><p><b>  }</b></p><p>  public int getId() {</

89、p><p>  return id;</p><p><b>  }</b></p><p>  public int getSortId() {</p><p>  return sortId;</p><p><b>  }</b></p><p> 

90、 public String getBigSort() {</p><p>  return bigSort;</p><p><b>  }</b></p><p><b>  }</b></p><p>  3.4.3 首頁面新聞查詢實現(xiàn)過程</p><p>  在網(wǎng)站首

91、頁中的右側頁面中主要是按不同的新聞大類別顯示新聞的標題,這里主要存在的類別主要包括:科學教育、法制教育、時政要聞、經(jīng)濟動向、社會現(xiàn)象以及娛樂天地6組大類別內(nèi)容。</p><p>  按各種新聞的類別顯示新聞標題主要是通過在首頁中定義數(shù)據(jù)持久化類的實例化對象實現(xiàn),由于數(shù)據(jù)庫持久化類對數(shù)據(jù)表的操作是過Hibernate中的hql語句進行操作的,因此,在首頁面中對每個類別定義如下的hql語句:</p>&

92、lt;p>  typeNews="科學教育";</p><p>  hql="from NewsForm where bigSort = '"+typeNews+"' order by id desc";</p><p>  typeNews="法制教育";</p><

93、p>  hql="from NewsForm where bigSort = '"+typeNews+"' order by id desc"; </p><p>  typeNews="時政要聞”;</p><p>  hql="from NewsForm where bigSort = '&quo

94、t;+typeNews+"' order by id desc" </p><p>  typeNews="經(jīng)濟動向";</p><p>  hql="from NewsForm where bigSort = '"+typeNews+"' order by id desc"; <

95、/p><p>  typeNews="娛樂天地”;</p><p>  hql="from NewsForm where bigSort = '"+typeNews+"' order by id desc"; </p><p>  typeNews="社會現(xiàn)象”; </p><

96、;p>  hql="from NewsForm where bigSort = '"+typeNews+"' order by id desc";</p><p>  3.4.4 新聞關鍵字查詢實現(xiàn)過程</p><p>  在當前系統(tǒng)的前臺左側頁面中存在站內(nèi)搜索的功能,在“關鍵字”文本框中輸入要搜索的內(nèi)容,單擊“search”按

97、鈕后可以進行新聞關鍵字搜索的功能,如圖所示:</p><p>  圖 3-1 站內(nèi)搜索界面</p><p>  3.4.5 新聞詳細查詢實現(xiàn)過程</p><p>  無論在前臺頁面中進行任何查詢的操作,在查詢結果頁面中,單擊新聞標題超鏈接就可以進行對新聞詳細查詢。由于管理員在后臺進行數(shù)據(jù)維護時,將新聞內(nèi)容保存在HTML網(wǎng)頁中,將HTML網(wǎng)頁的名稱保存在數(shù)據(jù)表,因此,

98、單擊每個標題中的鏈接實際上都會出發(fā)一個HTML網(wǎng)頁,該網(wǎng)頁將被彈出顯示。</p><p>  3.5 后臺系統(tǒng)架構</p><p>  3.5.1 后臺首頁面架構</p><p>  在當前系統(tǒng)的后臺首頁中,管理員可以對各種類別的新聞、站內(nèi)公告以及焦點導讀進行管理,如果登錄用戶為系統(tǒng)管理員,則可以對站內(nèi)的管理員信息進行管理,如果登錄的用戶為普通管理員,則具有修改登錄

99、用戶信息的功能,新聞后臺首頁運行結果</p><p>  各個部分說明以列表的形式給出:</p><p>  表 3-7 系統(tǒng)后臺各部分功能</p><p>  3.6 管理員模塊管理</p><p>  3.6.1 管理員模塊總體架構</p><p>  1.管理員管理模塊主要功能</p><p&

100、gt;  ◆ 管理員登錄:用于核實管理員身份的功能。</p><p>  ◆ 管理員查詢:用于實現(xiàn)管理員查詢的功能。</p><p>  ◆ 管理員添加:用于管理員添加的功能。</p><p>  ◆ 管理員密碼修改:用于修改普通管理員密碼的功能。2.管理員管理流程</p><p>  圖 3-2 管理員管理流程圖</p

101、><p>  3.6.2 管理員登錄的實現(xiàn)過程</p><p>  管理員登錄是管理員進入后臺維護數(shù)據(jù)的唯一通道。在前臺首頁右上角單擊“進入后臺”超鏈接,進入到管理員登錄頁面,如圖:</p><p>  圖 3-3 后臺登錄界面</p><p>  3.7 新聞管理模塊</p><p>  3.7.1 新聞管理模塊總體架構

102、</p><p>  1.新聞管理模塊主要功能</p><p><b>  ◆ 新聞小類別添加</b></p><p><b>  ◆ 新聞小類別刪除</b></p><p><b>  ◆ 新聞小類別查詢</b></p><p><b>  

103、◆ 新聞添加</b></p><p><b>  ◆ 新聞修改</b></p><p><b>  ◆ 新聞刪除</b></p><p><b>  ◆ 新聞查詢</b></p><p>  3.7.2新聞類別的實現(xiàn)類</p><p>  在

104、當前系統(tǒng)中,新聞類別主要是分為6大類:時政要聞、經(jīng)濟動向、法制教育、科學教育、社會現(xiàn)象以及娛樂天地。這6大類是固定的,但是它們的小類別不是固定的,需要后臺管理員進行維護。新聞類別實現(xiàn)類名稱為:SortAction.java.該類繼承DispatchAction類,實現(xiàn)多業(yè)務處理的操作。</p><p><b>  代碼如下:</b></p><p>  Package

105、 com.action;</p><p>  Import javax.servlet.http.*;</p><p>  Import org.apache.struts.action.*;</p><p>  Import com.actionForm.SrotForm:</p><p>  Import org.apache.strut

106、s.actions.DispatchAction;</p><p>  Import com.dao.ObjectDao;</p><p>  Import java.util.List;</p><p>  Import java.io.UnsupportedEncodingException;</p><p>  Public class

107、 SortAction extends DispatchAction</p><p><b>  {</b></p><p><b>  }</b></p><p>  3.7.3 新聞類別查詢的實現(xiàn)過程</p><p>  新聞類別信息的維護主要是新聞操作的子功能,例如單擊左側頁面中“時政要聞”的

108、超鏈接,可以查看該大類別中的所有小類別,查詢小類別信息的運行結果如圖:</p><p>  圖 3-4 新聞類別頁面</p><p>  實現(xiàn)“詳細類別管理”關鍵代碼如下:</p><p><b>  <%</b></p><p>  String sortNews=new String(request.getPa

109、rameter("bigSort").getBytes("ISO8859_1"),"gb2312");</p><p>  int pagesize=10;</p><p>  List list=(List)request.getAttribute("list");</p><p> 

110、 int number=list.size();</p><p>  //以下這段代碼是計算多少頁數(shù)</p><p>  int pageNumber=number;</p><p>  if(pageNumber%pagesize==0){</p><p>  pageNumber=pageNumber/pagesize;</p>

111、;<p><b>  }else{</b></p><p>  pageNumber=pageNumber/pagesize+1;</p><p><b>  }</b></p><p>  //以下是計算當前頁的頁數(shù)</p><p>  int count;</p>&

112、lt;p>  if(request.getParameter("count")==null){</p><p><b>  count=0;</b></p><p><b>  }else{</b></p><p>  count=Integer.valueOf(request.getParame

113、ter("count"));</p><p><b>  }</b></p><p>  //以下顯示多少條紀錄</p><p>  int start=count*pagesize;//開始條數(shù)</p><p>  int over=(count+1)*pagesize;//結束條數(shù)</p&g

114、t;<p>  int lastCount=number-over;//還剩多少條記錄</p><p>  if(lastCount<=0){</p><p>  over=number;</p><p><b>  }</b></p><p><b>  %></b>&l

115、t;/p><p><b>  <%</b></p><p>  for(int i=start;i<over;i++)</p><p><b>  {</b></p><p>  NewsForm form=(NewsForm)list.get(i);</p><p&g

116、t;  String hql="from SortForm where id='"+form.getSortId()+"'";</p><p>  SortForm sortForm=(SortForm)objectDao.queryFrom(hql);</p><p><b>  }%></b></

117、p><p>  3.7.4 新聞類別添加的實現(xiàn)過程</p><p>  在新聞類別查詢頁面上,單擊“添加類別”的超鏈接,即可顯示添加新聞類別信息的頁面,運行結果如圖:</p><p>  圖 3-5添加新聞類別頁面</p><p>  添加新類別頁面提交表單如下:</p><p>  表 3-8 添加新聞類別頁面提交表單&

118、lt;/p><p><b>  關鍵代碼如下:</b></p><p>  public ActionForward selectSortAction(ActionMapping mapping,</p><p>  ActionForm form, HttpServletRequest request,</p><p> 

119、 HttpServletResponse response)</p><p>  throws UnsupportedEncodingException</p><p><b>  {</b></p><p>  objectDao = new ObjectDao<SortForm>();</p><p> 

120、 String bigSort = request.getParameter("bigSort");</p><p>  bigSort = new String(bigSort.getBytes("ISO8859_1"), "gb2312");</p><p>  String hql = "from SortForm

121、 where bigSort='" + bigSort</p><p>  + "' order by id desc";</p><p>  List list = objectDao.queryList(hql);</p><p>  request.setAttribute("list", li

122、st);</p><p>  return mapping.findForward("selectSortAction");</p><p><b>  }</b></p><p>  // 對新聞詳細類別插入的Action</p><p>  public ActionForward insertS

123、ortAction(ActionMapping mapping,</p><p>  ActionForm form, HttpServletRequest request,</p><p>  HttpServletResponse response)</p><p>  throws UnsupportedEncodingException</p>

124、<p><b>  {</b></p><p>  SortForm sortForm = (SortForm) form;</p><p>  String hql = "from SortForm where bigSort = '"</p><p>  + sortForm.getBigSort()

125、 + "' and smallSort = '"</p><p>  + sortForm.getSmallSort() + "'";</p><p>  objectDao = new ObjectDao<SortForm>();</p><p>  SortForm sort = obj

126、ectDao.queryFrom(hql);</p><p>  if (sort != null)</p><p><b>  {</b></p><p>  request.setAttribute("result", "您輸入的類別名稱重復,請重新輸入");</p><p>

127、<b>  } else</b></p><p><b>  {</b></p><p>  objectDao.saveT(sortForm);</p><p>  request.setAttribute("result", "您輸入的類別成功");</p><

128、;p><b>  }</b></p><p>  return mapping.findForward("resultSortAction");</p><p><b>  }</b></p><p>  3.7.5 新聞查詢的實現(xiàn)過程</p><p>  管理員登錄以后,

129、在左側區(qū)域中,單擊任意新聞類別的類別的鏈接,都可以對新聞所在的類別進行查詢,其中,實現(xiàn)這些鏈接是將所有的大類別信息保存在一個數(shù)組對象中,然后通過for循環(huán)顯示數(shù)組中的新聞類別內(nèi)容,最后設置相同的超鏈接,通過for循環(huán)顯示各個類別信息的超鏈接的代碼如下:</p><p><b>  <%</b></p><p>  String[] typeNews={"

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論