正文 基於MVC模式個人博客係統的設計與實現(1 / 2)

基於MVC模式個人博客係統的設計與實現

應用實踐

作者:楊帆 林勇 胡秀兵

摘要: Blog作為一種新的生活方式、新的工作方式和新的學習方式已經被越來越多的人所接受,並且它正在改變傳統的網絡和社會結構。采用MVC模式設計實現了一個簡單的博客係統,讓MVC模式充分發揮了JSP、Servlet等J2EE組件的特點,從而可使更多的人們通過文字、圖片、聲音、視頻、無線等,盡情展示自我、分享感受、參與交流,美化生活。

關鍵詞:博客; JSP; Servlet; J2EE; MVC

中圖分類號:TP311.1 文獻標誌碼:A 文章編號:1006-8228(2014)01-23-04

0 引言

“博客”(Blog或Weblog),是一種十分簡易的傻瓜化個人信息發布方式。任何人都可以像使用免費電子郵件一樣,完成個人網頁的創建、發布和更新。博客就是開放的私人空間,可以充分利用超文本鏈接、網絡互動、動態更新等特點,在網絡中,精選並鏈接全球互聯網中最有價值的信息、知識與資源[1]。本文基於MVC模式,發揮JSP、Servlet等J2EE組件的特點,對個人博客係統進行了設計,並實現了相應的功能,讓用戶能夠更方便地進行網絡表達和交流。

1 關鍵技術

1.1 JSP技術

JSP將網頁邏輯與網頁設計和顯示分離,支持可重用的基於組件的設計,使基於Web的應用程序的開發變得迅速和容易。

Web服務器在遇到訪問JSP網頁的請求時,首先執行其中的程序段,然後將執行結果連同JSP文件中的HTML代碼一起返回給客戶。插入的Java程序段可以操作數據庫、重新定向網頁等,以實現建立動態網頁所需要的功能。

JSP與Java Servlet一樣,是在服務器端執行的,通常返回該客戶端的就是一個HTML文本,因此客戶端隻要有瀏覽器就能瀏覽。

由於JSP頁麵的內置腳本語言是基於Java的,而且所有的JSP頁麵都被編譯成為Java Servlets,所以JSP頁麵具有Java技術的所有好處,包括健壯的存儲管理和安全性。作為Java平台的一部分,JSP擁有Java編程語言“一次編寫,各處運行”的特點。

1.2 B/S體係

1.2.1 三層體係結構

CGI,ASP,PHP等技術的出現,使得開發動態交互式的Web應用得以實現。用戶通過瀏覽器向服務器發送請求,Web服務器接收客戶端發送來的請求,對請求進行分析,如果請求是靜態頁麵,那麼就將所請求的頁麵發送到客戶端;如果請求的是動態頁麵,那麼就執行此動態頁麵,並將執行結果發送給客戶端。動態頁麵中的腳本程序可以和數據庫服務器進行交互。

1.2.2 JSP網站開發模式

JSP網站開發技術標準提供了一種常用的開發模式:JSP+Servlet+JavaBean開發模式[5]。

Servlet技術是一種采用Java技術來實現CGI功能的一種技術。Servlet是運行在Web服務器上,用來生成Web頁麵。Servlet技術非常適於服務器端的處理和編程。

在此種開發模式中,JSP技術用來顯示頁麵,該頁麵中沒有任何的商業處理邏輯,通過Servlet技術來完成大量的事物處理工作。Servlet用來處理事務的請求,充當著一個控製者的角色,並負責向客戶發送請求,創建JSP需要的Bean和對象,根據用戶的請求行為,決定將哪個JSP頁麵發送給用戶。

從上麵分析來看,該開發模式適合於團隊開發,速度相對較慢,但是可維護性高[3]。

1.3 MVC設計模式

MVC(Model-View-Controller)模式並不是J2EE行業人士標新立異的。MVC的核心就是要做到三級甚至多級的鬆散耦合,MVC模式將係統分為三個部分,分別是:數據模型、視圖和控製器,並定義了這三個部分之間實現通信的一種模式,使每個部分不必卷入到其他部分的狀態表示和方法實現的細節中去。每個部分有自己的數據管理規則,各個對象之間的通信隻能使用自己定義的一個受限連接集合進行。保持這種分離性通常是麵向對象編程和設計要追求的目標,讓各個對象隻需專注於自己的事務。

2 設計

2.1 功能模塊設計

博客信息係統包括:前台信息顯示係統、後台信息管理係統。前者是麵向公眾的一個窗口,通過前台信息顯示係統,方便訪問者瀏覽日誌、評論和留言;發表評論和留言。後者是後台信息管理係統,方便博客管理員發表日誌;回複評論和留言;管理日誌、評論、留言及個人信息 [2]。