韓霄 郭義喜 王志剛
解放軍信息工程大學電子技術學院 河南 450004
新聞發(fā)布系統(tǒng)(News Release System)是上個世紀九十年代互連網(wǎng)技術發(fā)展以后才出現(xiàn)的技術,現(xiàn)在大多數(shù)網(wǎng)站使用的新聞發(fā)布系統(tǒng)平臺功能有限,或多或少存在以下幾個缺點:
(1) 新聞發(fā)布系統(tǒng)開發(fā)的周期長。
(2) 新聞發(fā)布系統(tǒng)開發(fā)的工作量大。
(3) 新聞發(fā)布系統(tǒng)開發(fā)通用性差,一次開發(fā)只對應于一個網(wǎng)站,很難實現(xiàn)網(wǎng)站信息開發(fā)的自動化和資源的重復利用。
(4) 新聞發(fā)布系統(tǒng)開發(fā)的費用比較高,人力資源浪費嚴重。
(5) 網(wǎng)站的管理和后期系統(tǒng)的維護升級困難。
針對目前新聞發(fā)布系統(tǒng)的現(xiàn)狀,本文提出了一種基于J2EE的新聞發(fā)布系統(tǒng),在本系統(tǒng)中使用Struts框架進行開發(fā)既能減低開發(fā)復雜度,又能使整個系統(tǒng)清晰,可靠,健壯,本系統(tǒng)開發(fā)周期短,兼容性強,易維護。
目前,J2EE在互聯(lián)網(wǎng)上非常流行,J2EE在各種領域都得到了深入的研究和應用。本系統(tǒng)基于 J2EE 平臺,采用Struts框架,利用模型-視圖-控制器(MVC)設計模式,而后臺數(shù)據(jù)庫則是用MySql。下面針對本系統(tǒng)所采用的相關技術進行詳細介紹。
J2EE是一種利用Java 2平臺來簡化企業(yè)解決方案的開發(fā)、部署和管理相關的復雜問題的體系結構。
J2EE核心是一組技術規(guī)范與指南,其中所包含的各類組件、服務架構及技術層次,均有共通的標準及規(guī)格,讓各種依循J2EE架構的不同平臺之間,存在良好的兼容性。
MVC設計模式來源于面向對象語言 Smalltalk,它的主要思想是將應用程序分為三個部分:模型(Model)、視圖(View)和控制器(Controller),以提高應用程序的可擴展性。
Struts是MVC設計模式/Model2架構的一個實現(xiàn),它將應用分為模型、視圖和控制器三部分。
為了將MVC設計模式有效地應用于J2EE應用開發(fā)之中,在Apache軟件基金贊助下,一個叫做Jakarta的項目計劃得以開展,項目的創(chuàng)立者希望通過對該項目的研究,為開發(fā)人員提供一個開發(fā)MVC模式的應用框架,Struts正是這個項目的產(chǎn)物。
MySQL是最受歡迎的開源SQL數(shù)據(jù)庫管理系統(tǒng),它由MySQL AB開發(fā)、發(fā)布和支持。MySQL是一個快速的、多線程、多用戶和健壯的SQL數(shù)據(jù)庫服務器。
基于J2EE的新聞發(fā)布系統(tǒng)是基于J2EE平臺的集新聞發(fā)布、管理于一體的新聞發(fā)布系統(tǒng),是將新聞、信息欄目、產(chǎn)品發(fā)布和業(yè)界動態(tài)等信息集中起來發(fā)布、管理、查詢等的一種網(wǎng)站應用程序。網(wǎng)站信息通過一個操作簡單的界面加入數(shù)據(jù)庫,然后通過已有的網(wǎng)頁模板格式與審核流程發(fā)布到網(wǎng)站上。
基于J2EE的新聞發(fā)布系統(tǒng)體系結構圖如圖1所示。

圖1 基于J2EE的新聞發(fā)布系統(tǒng)體系結構圖
基于 J2EE的新聞發(fā)布系統(tǒng)包含前臺新聞瀏覽模塊和后臺新聞管理模塊。
前臺新聞瀏覽模塊又包含用戶注冊、用戶登錄、新聞主頁、新聞瀏覽、新聞查詢、新聞評論、新聞類型列表、相關新聞鏈接、新聞訪問統(tǒng)計次數(shù)9個子模塊。
后臺新聞管理模塊又包含新聞類型管理、新聞信息管理、新聞評論管理、用戶管理4個子模塊。
本系統(tǒng)功能如下:
前臺新聞瀏覽
(1) 用戶注冊、登錄;
(2) 顯示前10條推薦新聞;
(3) 圖片顯示前5條圖片新聞;
(4) 顯示每項分類新聞的前10條新聞;
(5) 新聞查詢;
(6) 新聞評論;
(7) 相關新聞連接;
(8) 新聞訪問統(tǒng)計。
后臺新聞管理
(1) 管理員登錄;
(2) 添加、刪除、修改發(fā)布新聞;
(3) 添加刪除修改新聞類型;
(4) 搜索新聞;
(5) 刪除評論;
(6) 文件上傳;
(7) 添加刪除修改用戶及權限。
在本系統(tǒng)中使用的是MYSQL 數(shù)據(jù)庫管理系統(tǒng)。數(shù)據(jù)庫服務器安裝的位置為本機,數(shù)據(jù)庫名稱為NEWS,下面將針對本系統(tǒng)數(shù)據(jù)庫分析和設計、數(shù)據(jù)表的創(chuàng)建,數(shù)據(jù)表關系圖和創(chuàng)建存儲過程做詳細的闡述。
為了把用戶的數(shù)據(jù)要求清楚、準確地描述出來,系統(tǒng)分析員通常建立一個概念性的數(shù)據(jù)模型。概念性數(shù)據(jù)模型是一種面向問題的數(shù)據(jù)模型,是按照用戶的觀點對數(shù)據(jù)建立的模型。它描述了從用戶角度看到的數(shù)據(jù),它反映了用戶的現(xiàn)實環(huán)境,而且與軟件系統(tǒng)中的實現(xiàn)方法無關。這一概念模型就是實體-關系圖。實體-關系圖包含三種相互關聯(lián)的信息:數(shù)據(jù)對象、數(shù)據(jù)對象的屬性以及數(shù)據(jù)對象彼此間相互連接的關系。
根據(jù)上述對基于J2EE的新聞發(fā)布系統(tǒng)功能的設計分析,創(chuàng)建各數(shù)據(jù)表的實體E-R總關系圖,如圖2所示。

圖2 E-R實體關系圖
在基于 J2EE的新聞發(fā)布系統(tǒng)中各數(shù)據(jù)表的關系圖如圖3所示,各數(shù)據(jù)表之間的關系比較緊密,所以在對數(shù)據(jù)操作時要注意數(shù)據(jù)的完整性。

圖3 數(shù)據(jù)表關系圖
本文針對現(xiàn)今各事業(yè)單位對于新聞發(fā)布的強烈需求,提出了一種基于J2EE的新聞發(fā)布系統(tǒng)。本系統(tǒng)基于J2EE平臺,前臺使用 JSP來開發(fā),選用 Java語言作為開發(fā)語言,基于Struts框架,利用模型-視圖-控制器(MVC)設計模式,開發(fā)工具采用 Eclipse3.2,而后臺數(shù)據(jù)庫則是用 MySql,Tomcat作為測試服務器。本系統(tǒng)提高了用戶獲取新聞信息的及時性,使用戶能更加方便快速的瀏覽新聞,使新聞信息可以更加集中有效的發(fā)布管理。
[1] 茹蓓,張磊.新聞信息發(fā)布管理系統(tǒng)的現(xiàn)狀及改進[J].平原大學學報.2004.
[2] 方賢文.基于 Struts的 Web系統(tǒng)構建[J].計算機技術與發(fā)展.2006.
[3] BobareJJ,AllenpaulR.劉塑譯.J2EE 技術內(nèi)幕[M].北京:機械工業(yè)出版社.2005.
[4] 趙娜.用Struts實現(xiàn)MVC結構[J].紹興文理學院學報.2004.
[5] 方賢文.基于 Struts的 Web系統(tǒng)構建[J].計算機技術與發(fā)展.2006.
[6] 孫衛(wèi)琴.精通Struts:基于MVC的Java Web設計與開發(fā)[M].第一版.北京:電子工業(yè)出版社.
[7] 唐漢明.深入淺出 MySQL數(shù)據(jù)庫開發(fā)、優(yōu)化與管理維護.人民郵電出版社.2008.
[8] 張海藩.軟件工程(第四版)[M]. 北京:清華大學出版社.2003.
[9] 葉俊民.軟件工程[M].北京:清華大學出版社.2006.