馬文靜
摘 要:該文詳細論述了一個基于B/S模式的博客系統的開發流程及其功能。該系統主要分為前臺博主對自己博客的管理以及后臺管理員對博客注冊用戶的管理兩大模塊,前臺博主可以對自己的博客空間進行管理設置,如添加好友、添加刪除文章和圖片,也可以給其他博主留言等功能。后臺管理員可以對注冊到該平臺的用戶進行管理。
關鍵詞:博客 B/S模式 交流 互聯網
中圖分類號:TP31 文獻標識碼:A 文章編號:1674-098X(2016)07(c)-0082-03
博客網站已經由幾年前的火熱變得平淡,通過各種方式和途徑融入了人們的現實生活,成為人們展現自己的主要方式。博客的發展對應著全球知識社會來臨的背景。對于組織機構信息化仍處于初級階段的中國,博客充分發揮個人主導性和積極性的非正式知識管理工具和其深度溝通交流的功能,對我們國家的知識傳播、擴散和有效提升組織的學習和創新能力,具有特殊的意義。博客用戶的快速增長以及組織機構對它的廣泛應用,有助于推動中國向學習型社會演進。
1 系統設計目標分析
該系統是用JSP實現的一個完全基于瀏覽器的博客系統,任何注冊個人博客的人都擁有以下功能。
(1)登錄博客系統的后臺管理平臺。
(2)更改博客賬號的基本信息。
(3)能夠實現后臺用戶管理。
(4)文章管理。
(5)相冊管理。
(6)留言管理。
博客訪問者具有以下功能:
(1)瀏覽博客系統中的日志、留言、評論。
(2)發表評論及留言。
2 基本技術方案
2.1 JSP中的各種技術
隨著博客逐漸融入人們的生活,筆者設計了一個切實可行的博客網站平臺,該網站應用了JSP技術,基于Java語言實現,開發環境為MyEclipse,后臺數據庫采用MySQL。通過Java、Struts2、Hibernate等實現博客網站的主要功能。
2.2 基于B/S的WEB應用體系結構
Web服務器可以根據用戶的請求動態更新頁面上的信息,Web信息提供者可以通過改變數據庫中的數據向用戶提供最新信息,而不需要逐個更改頁面。用戶可以通過這些動態頁面向數據庫中輸入信息,從而增強了用戶和服務器之間的交互性。
2.3 MyEclipse簡介
MyEclipse企業級工作平臺(MyEclipse Enterprise Workbench,簡稱MyEclipse)是對EclipseIDE的擴展,MyEclipse是一個十分優秀的用于開發Java、J2EE的 Eclipse插件集合,幾乎囊括了目前所有主流開源產品的專屬eclipse開發工具。
2.4 Tomcat簡介
Tomcat是一個免費的開源的Serlvet容器,是Apache基金會的Jakarta項目中的一個核心項目,由Apache、Sun和其他一些公司及個人共同開發而成。
3 可行性分析與需求分析
3.1 可行性分析
(1)經濟可行性分析。此網站對開發者來說不需要太高的軟硬件支出,成本低效益高,網站在經濟上是可行的。
(2)技術可行性分析。該網站采用的JSP開發,數據庫服務器選用微軟公司的MySQL數據庫,它能處理大量數據,同時保持數據的完整性并提供許多高級管理功能。硬件方面,硬件更新的速度隨著科技飛速發展越來越快,容量越來越大,可靠性越來越高,完全滿足個人博客網站的需要。
(3)運行可行性分析。此網站具備友好漂亮的頁面,使用方便,操作簡單,易于被用戶接受。
(4)法律可行性分析。此網站的設計都是在法律范圍內進行設計的,沒有侵權或蓄意破壞他人網站的行為。
3.2 需求分析
3.2.1 前臺用戶未登錄管理
用戶可以訪問其他人的博客,用戶未登錄時前臺具有的功能如下。
(1)瀏覽日志并給予評論。
(2)給博主發送小紙條。
(3)查看博主的資料。
(4)在線給博主留言。
(5)添加好友。
3.2.2 前臺用戶登錄后管理
用戶登錄后前臺具有的功能如下。
(1)修改自己的資料。
(2)添加文章以及照片。
(3)訪問好友博客。
(4)留言查詢。
(5)好友查詢。
(6)對自己的文章、照片等進行修改。
3.2.3 后臺管理員管理
管理員通過登錄后可以管理所有注冊的用戶,其具有的功能如下。
(1)用戶管理:刪除用戶,設置用戶的凍結以及解凍兩種狀態。
(2)相冊管理:查看刪除所有用戶的相冊。
(3)文章管理:設置是否推薦文章。
(4)管理員:修改資料。
4 總體設計
4.1 網站的設計和功能模塊
(1)博客網站的功能包括日志、相冊、留言、友情鏈接等功能模塊。
(2)個人博客網站的功能,前臺模塊包括了日志查看、留言,相片的查看、日歷、友情鏈接以及日志、圖片的更新等模塊。
(3)后臺模塊包括管理員對用戶、文章、圖片以及個人信息的管理等模塊。
4.2 數據庫設計
4.2.1 數據庫的需求分析
用戶的需求具體體現在各種信息的提供、保存、更新和查詢方面,這就要求數據庫結構能充分滿足各種信息的輸入和輸出。通過網站的功能分析,針對一般的博客網站,總結出如下的需求信息:博客主要有訪客和博主以及后臺管理員3個角色,博主可以發表日志、上傳相片、回復評論等。
4.2.2 數據庫概念結構設計
為了把用戶的數據要求清晰明確地表達出來通常要建立一個概念性的數據模型。概念性數據模型是一種面向問題的數據模型,是按照用戶的觀點來對數據和信息建模。描述了從用戶角度看到的數據,反映了用戶的現實環境。最常用的表示概念性數據模型的方法,是實體—聯系方法(Entity—Relationship Approach)。這種方法用ER圖描述現實世界中的實體,而不涉及這些實體在系統中的實現方法。用這種方法表示的概念性數據模型又稱為ER模型。ER模型中包含“實體”“聯系”和“屬性”。
4.2.3 數據庫的完整性和安全性
數據庫的完整性是指數據的正確性和相容性。完整性檢查和控制的防范對象是不合語義的、不正確的數據,防止他人進入數據庫。
數據庫的安全性是保護數據庫防止惡意的破壞和非法的存取。安全性控制的防范對象是非法用戶和非法操作,防止他們對數據庫數據的非法存取。
該網站中訪客只能瀏覽博主的日志、圖片、資料、留言,不可更改和竊取博主的私要。管理博客的信息,博主需要通過登陸窗口安全登陸才能進入管理頁面,進行相關的管理、更改。
5 詳細設計與具體實現
5.1 公共模塊設計
將程序中的一些公共模塊提取出來,有利于提高程序的開發及維護效率,所以進行項目開發時會提取程序的公共模塊,例如數據持久化操作等。
此系統采用的數據持久化類名稱為ObjectDao,開發本系統使用了Hibernate框架和Struts 2框架技術,在編寫數據持久化類的代碼中,分別定義了SessionFactory類、Session類和Transaction類的屬性,然后通過靜態方法取得對數據庫的連接操作,最后根據連接對象分別實現對數據表的添加、修改、刪除和查詢操作。將數據的持久化操作封裝在了ObjectDao類中。
5.2 主頁面設計
首頁會顯示推薦播客、熱門博客、推薦文章、熱門文章以供其他博主或訪客訪問。
5.3 用戶管理模塊設計
實現用戶管理,首先需要設計一個用戶注冊的表單,然后根據用戶信息表創建對應的用戶信息實體類,然后再創建用戶管理的Action控制器類,在控制器中獲取用戶的注冊信息,然后調用DAO層的方法將注冊信息保存到數據庫。
5.3.1 用戶注冊
在網站的首頁中,單擊導航區域中“注冊”超級鏈接,可以進入用戶注冊頁面,該頁面主要搜集用戶各種信息,當用戶在注冊頁面中填寫完注冊信息后,單擊“添加”按鈕后,可進行用戶注冊的操作。該頁面的Form表單主要通過Struts 2的標簽元素進行編寫。
5.3.2 查看熱門博客
在網站的首頁中,單擊導航區域中熱門博客或推薦博客中的超級鏈接,可以進入其他人的博客頁面,該頁面主要顯示了其博主的文章、相冊、朋友等信息,你也可以給他留言。
5.3.3 查看熱門文章
在網站的首頁中,單擊導航區域中熱門文章或推薦文章中的超級鏈接,可以進入其他人的博客的文章閱讀頁面,該頁面主要顯示了文章的內容、發布日期、發布作者等信息。
5.3.4 查看博主的相冊
在網站的首頁中,打開任意你感興趣的博客,進入其主頁面,在右側的導航欄中顯示了博主的文章類別、相冊類別、好友鏈接,單擊其相冊類別你可以看到博主的相冊。
5.3.5 管理自己的博客
在網站的首頁中,注冊成功后,即可登錄自己的博客主頁,在右上角單擊“管理自己的博客”超鏈接,即可設置修改你自己的博客內容,添加、刪除、修改文章以及相冊,查看留言,還可以對自己的好友進行設置。
5.3.6 后臺管理員管理
后臺管理員登錄之后可以對用戶、圖片、文章進行修改設置,也可以修改管理員的登錄密碼。
6 結語
在編寫論文時,先對博客網站的背景、開發意義以及其發展趨勢進行了簡述,并對博客網站的功能等需求做了分析和研究,對開發工具和環境做了介紹。在網站的詳細設計中使用模塊化設計,涉及前臺模塊和后臺模塊的設計,在整個設計中感受最深的就是思路的整理和學習的方式,解決問題的方法尤為重要。
參考文獻
[1] 孫衛琴.Tomcat與Java Web開發技術詳解[M].2版.電子工業出版社,2009.
[2] 郝安林,王偉平,張明亮.JSP從入門到精通[M].電子工業出版社,2008.
[3] 趙俊峰.Java Web應用開發案列教程[M].清華大學出版社,2012.