摘要:系統是針對奧運專題網站而量身定做的,其功能主要有實現用戶登錄、用戶查詢與授權以及修改用戶信息;實現信息查詢,其中包括新聞信息、圖片信息等的查詢;實現對系統庫的維護。系統需求分析是在系統開發的總體任務的基礎上完成的,并從實際應用的角度考慮,能夠極大方便客戶順利查詢所需要的信息。
系統采用JSP語言進行系統開發。通過TOGETHER軟件,對系統整體與局部進行設計。采用MYSQL5.0,數據庫強大而又高效穩定。采用APACHE公司的TOMCAT5.0作為系統的服務器。采用如今流行的MVC模式進行系統的框架架構。
關鍵詞:奧運網站;Java;JSP;JDBC;MYSQL
中圖法分類號: TP312文獻標識碼: A文章編號:1009-3044(2008)24-1189-03
Olympic Website Design
CHEN Yong, LU Gang
(The Artillery Academy of PLA, Hefei 230031,china)
Abstract: The system is tailor-made for Olympic Website Design, and its main function is to achieve user login, query and authorized users, and changes the user's information. To get the information inquiries, including picture information, results and other information, implementation of the system for maintenance, I set Olympic Website.System Requirements Analysis in the overall system development task on the basis of complete, and from a practical application point of view, customers can greatly facilitate the successful completion of their work.
The system uses the JSP language systems development. To use TOGETHER software I design the system. Using MYSQL5.0, the database is powerful and efficient. APACHE used as a company TOMCAT5.0 system server. Now I use the popular MVC framework for the structure.
Key words:Olympic Website; Java; JSP; JDBC; MYSQL
1 引言
Internet的出現不僅使得通信和資源共享的地理范圍擴展至全球,而且隨著其服務內容和應用領域的拓寬,正在改變人們的時空觀。奧運專題網站的出現是信息技術及其應用發展到一定程度的必然產物。
這里,我采用B/S模式來實現客戶端對服務器端的調用。在B/S模式中,客戶端運行瀏覽器軟件。瀏覽器以超文本形式向 Web 服務器提出訪問數據庫的要求,Web 服務器接受客戶端請求后,將這個請求轉化為SQL語法,并交給數據庫服務器,數據庫服務器得到請求后,驗證其合法性,并進行數據處理,然后將處理后的結果返回給 Web 服務器,Web 服務器再一次將得到的所有結果進行轉化,變成 HTML 文檔形式,轉發給客戶端瀏覽器以友好的 Web 頁面形式顯示出來。而對于網絡數據庫的創建,則是利用 JSP 技術來解決。
2 奧運專題網站設計與實現的前臺架構
2.1 網站的結構及模塊設計
奧運專題網站設計是為用戶提供一個方便的、可快速瀏覽當前奧運會的相關信息的界面,并且也可以隨時發布最新的信息以達到信息共享的目的,我以2008年奧運會為主題做的網站,主要包括新聞中心、賽事中心、賽事安排、奧運焦點、奧運籌辦、備戰奧運、吉祥物、圖片新聞等功能模塊,任何用戶均可使用本系統來查看信息,用戶可以通過點擊每條信息的標題來查看該條信息的詳細內容。當用戶作為系統管理員成功登錄后,可以使用信息管理模塊實現對信息的添加、修改和刪除,管理員本次操作完畢后,可單擊“管理員退出”超鏈接退出登錄狀態。
2.2 前臺客戶端主頁設計
根據網站結構及模塊分析,和網站功能,利用JSP與數據庫結合的技術建立網上瀏覽系統,采用交互式的動態的Web畫面來實現。奧運專題網站設計與實現的主頁具體設計。
網站主頁所展示的是奧運網站的一些信息,在上邊的欄目中可以選擇喜歡的欄目,通過超文本鏈接可以查看具體的信息,欄目下邊有新聞圖片替換功能,根據上傳圖片的不同,圖片會不停的替換,使網頁更加生動。
2.3 信息模塊功能
信息模塊在《奧運專題網站設計與實現》中起著舉足輕重的作用,信息模塊包括以下幾個部分:
信息的動態提取,如圖1所示:
將數據的內容根據狀態動態提到前臺頁面上。
2.4 欄目模塊功能
信息的組成以欄目為單元,以信息的動態提取為基礎,將信息以欄目為單元存在很多好處,一是可以使信息有序化,二是可以使信息集中管理化。欄目模塊具體設計包括奧運首頁、新聞中心、賽事中心、賽事安排、奧運焦點、奧運籌辦、備戰奧運、吉祥物。
2.5 友情鏈接功能
友情鏈接功能:用戶可以在本網站直接點擊主頁底端的那些網站,不用在瀏覽器上輸入那些網站的地址,就可以鏈接到想要的那個網站。友情鏈接的好處不在于可以給您的網站帶來多少直接的訪問量,而在于它會讓搜索引擎更多的收錄您的網頁。
3 奧運網站后臺功能模塊設計
這一階段的主要任務是從奧運網站的總體目標出發,根據系統分析階段對系統邏輯功能的要求,并考慮到經濟、技術和運行環境等方面的條件,確定系統的總體結構和系統各組成部分的技術方案,合理選擇計算機和通信的軟、硬件設備,提出系統的實施計劃,確保總體目標的實現。

圖1 信息動態提取
3.1 功能模塊劃分
在本系統中,系統管理模塊的功能比較簡單,里面有一個用戶管理模塊。在系統初始化時,有一個默認的“系統管理員”用戶Admin,由程序設計人員手動地添加到數據庫中,Admin用戶可以創建其他的管理員信息。
系統管理員給一般用戶授權,使他們擁有一定的權利去管理數據庫,管理員進行信息的采編和審發,以便及時更新信息。如圖2所示:

圖2功能模塊劃分
3.2軟件介紹
客戶端應用程序界面由主界面、操作管理模塊界面組成的,現將登錄界面、和操作管理模塊界面的部分界面介紹如下:
3.2.1管理員登錄模塊設計
在系統初始化時,有一個默認的“系統管理員”用戶Admin,由程序設計人員手動地添加到數據庫中。在沒授權之前以系統管理員的身份登陸,登陸之后Admin用戶可以創建其他的管理員信息。
3.2.2奧運網站系統管理模塊設計
系統管理界面提供給了操作者方便的管理途徑。在這里可以進行對用戶、部門、欄目的添加,刪除,修改,并且可以對欄目進行統計,統計當天每個時刻的訪問量以及每個欄目訪問量的排名。以用戶的添加、刪除修改為例。
系統中必須至少有一個用戶,并且至少存在一個身份為系統管理員的用戶,否則將無法打開用戶授權窗口,也就無法增加、修改用戶操作權限。(缺省即軟件第一次安裝時,將提供一個用戶名為admin,密碼為 test,權限為系統管理員的賬號,用戶可利用此賬號登錄到系統,然后添加自己需要的賬號。)
系統管理員給普通用戶添加登錄賬號、登錄密碼、姓名、電子郵箱、電話等信息,提交后用戶管理模塊里就出現了剛才添加的普通用戶信息,在關鍵字添上所查的信息以及用戶名稱,點擊查詢,就可以查到想要找的信息了,
管理員可以將光標移到想要修改的記錄上,直接修改光標所在行的用戶的權限等。點擊刪除,系統將刪除光標所在行的用戶。用戶自上次保存后所做的修改將不被保存,窗口中的內容將恢復為上次保存后的內容。
3.2.3奧運網站信息管理模塊設計
信息管理模塊包括信息采編和信息審發,信息采編可以給每個欄目添加信息和圖片,如果對添加的內容不滿意,可以對其進行修改。寫完的信息通過審發后,前臺才顯示信息。
在線編輯器:可以設置字體、字號、顏色和段落格式等,總之在word里能用的功能在這里都能用,添加頁面,集成word功能、上傳圖片功能。
相關文件的添加:通過點擊瀏覽在電腦里找到想要的文件。
信息的添加:在標題空白處寫上信息的名稱,在正文里按照word里的功能寫就可以了,除此之外還能上傳圖片、自動添加作者名字,以及文章來源等。
信息審發:管理員要對添加的信息進行發布,否則前臺無法看到所添加的信息,只有信息發布成功了,前臺和后臺才算做到真正的交互。
3.2.4奧運網站權限管理模塊設計
權限管理包括角色管理和用戶授權,系統管理員可以根據需要給用戶分配角色,使他管理部分部門以及部分欄目,給予用戶管理后臺數據庫的權利,此選項用于對系統用戶的加密及安全權限設置,但只允許系統管理員進入此窗口進行設置。
角色管理:這個功能模塊是本系統的重點。在此功能模塊中體現的系統的安全可靠。此模塊是負責授以何種角色的。在此模塊中根據需要可以隨時添加角色。如總系統管理員、系統管理員和一般用戶等。在此處可以對他們的登錄系統的權利加以限制和操作欄目的限制。也可以添加、刪除和修改角色。
用戶授權管理:授以工作人員的何種角色。當他們登錄系統時,由于他們的角色不同從而使他們進入系統后行使的權力不同。由于權力的限制使管理員和用戶區分開來。方便系統的管理,從而也保證系統的安全。
本系統為用戶提供了一個方便易用的使用界面,同時也為具有更高權限的管理用戶提供添加、刪除、修改的系統維護功能。
4后臺服務器數據庫設計
整個數據庫的關鍵是表結構的設計,它獨立于整個數據庫的邏輯結構,能充分反映現實世界,包括實體之間的聯系能滿足用戶需求,而且易于擴充和修改。
4.1數據庫建立模式
本系統采用hibernate方式進行數據庫的連接。眾所周知,大多數應用程序都需要處理數據,Java應用程序運行時,把數據封裝為相互連接的網絡對象。然而這些對象只能存在于內存中,而內存不能永久保存數據,當應用程序運行結束時,像這些對象就會消失在一團邏輯中。因此,如果要永久保存對象的狀態,需要將對進行持久化,即把對象存儲到專門的數據存儲庫中。然而目前關系數據庫仍然是使用最廣泛的數據存儲庫,在關系數據庫中存放的是關系數據,它是非面向對象的。除此之外,還有另一種情況,即在編寫應用程序之前,數據就已經存在了,所以需要有讀入它們和將其表示為對象的方法。手動編寫代碼來執行這些任務不僅單調乏味、易于出錯,而且會占用整個應用程序的很大一部分開發工作量。因此,我們需要一種機制,能將內存中的對象和關系形數據庫中的數據進行相互映射。
Hibernate不僅僅管理Java類的數據庫表的映射(包括Java數據類型到SQL數據類型的映射),還提供數據查詢和獲取數據的方法,可以大幅度減少開發時人工使用SQL和JDBC處理數據的時間。 Hibernate的目標是對于開發者通常的數據持久化相關的編程任務,解放其中的95%。對于以數據為中心的程序來說,它們往往只在數據庫中使用存儲過程來實現商業邏輯,Hibernate可能不是最好的解決方案,但是對于那些在基于Java的中間層應用中,它們實現面向對象的業務模型和商業邏輯的應用,Hibernate是最有用的。
Hibernate能讓開發者繼續使用通常的java開發習慣,諸如派生、多態、組合和java集合框架等來開發持久對象層;同時它還提供一個精簡的面向對象的SQL語言擴展,作為對象和關系型數據的橋梁;支持目前幾乎所有的主流應用的數據庫:Oracle, DB2, MySQL, PostgreSQL, Sybase, SAP DB, Hypersonic, Microsoft SQL Server, Informix, FrontBase, Ingres, Progress, McCoy SQL, Point base 和Interbase;
4.2系統數據庫的詳細建立
4.2.1用戶信息數據表
用戶信息表:主要用于記錄注冊用戶信息。
4.2.2信息綜合表
信息綜合表:主要用于信息的采編和信息的發布。
4.2.3 權限數據表
權限表:主要用于給用戶授予權限使其擁有一定的權利來管理數據庫。
4.3實現數據庫之間的聯系
建立用戶信息表、權限表和信息綜合表三個表之間的聯系,使得用戶注冊登錄系統,信息系統和授權管理系統關聯起來,用戶先以系統管理員的身份登錄,數據庫有一個默認的登錄賬號admin和一個密碼test,系統管理員登錄后可以在個人信息里修改密碼。系統管理員還可以添加用戶信息注冊普通用戶,普通用戶也有賬號、密碼等。系統管理員給普通用戶授權使其可以管理欄目和功能模塊。
系統的部分E-R圖如圖3所示。

圖3 系統部分E-R
4.4 使用SQL標記訪問數據庫
SQL標記庫支持如下數據庫操作:數據庫查詢(SELECT)、方便地訪問查詢結果、執行數據庫更新(INSERT、UPDATE、DELETE)、支持數據庫事務。從數據庫查詢人員的名字、年齡、E-mail和電話,所用到的語句為〈sql:query sql=“select name,age,tel from user”var=“results”dataSource=“${ds}”/>
5 結束語
奧運專題網站設計與實現并不是我們想象的寫程序那么簡單,它包括了編寫程序、數據庫設計、網頁制作、圖象處理、版面設計、數據采集、文本編輯、服務器管理等等,要搞好一個好的,完善的網站需要一個詳細的、合理的、可行性的規劃設計。
參考文獻:
[1] 吳其慶.JBUILDER 9編程思想與實踐[M].北京:冶金工業出版社,2003.
[2] 張翟,張清,郭立山.JAVA程序設計教程[M].北京:冶金工業出版社,2005.
[3] 張龍祥.JDBC與Java數據庫程序設計[M].北京:人民郵電出版社,2005.
[4] Peter van der Linden.Java2教程[M].北京:電子工業出版社,2003.
[5] 廖若雪.JSP高級編程[M].北京:機械工業出版社,2001.
[6] 吳其慶.JSP 編程思想與實踐]M].北京:冶金工業出版社,2003.
[7] 馮沃輝.黃智誠.Dreamweaver MX[M].北京:冶金工業出版社,2003.
[8] 吳其慶.Java 程序設計35講[M].北京:冶金工業出版社,2003.
[9] Phil Hanna.JSP技術大全[M].北京:機械工業出版社,2002.