基于java的個人博客系統(tǒng).doc
《基于java的個人博客系統(tǒng).doc》由會員分享,可在線閱讀,更多相關《基于java的個人博客系統(tǒng).doc(120頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、寧夏大學新華學院本科學位論文摘 要隨著互聯(lián)網(wǎng)的發(fā)展,人們的需求已不再像以前停留在物質(zhì)階段,很多人希望尋找精神的寄托,希望能在互聯(lián)網(wǎng)的海洋中有一片屬于自己的島嶼。博客的出現(xiàn)給了人們新的選擇,人們可以在自己的博客上寫文章發(fā)照片,可以向自己的親朋好友表達自己的話語和感情。而最近幾年非常受大眾歡迎的微博則證明了人們的這種需求。本文設計的個人博客系統(tǒng)是近年來隨著網(wǎng)絡技術的發(fā)展而產(chǎn)生的一種新型博客系統(tǒng)。與傳統(tǒng)博客相比,本設計擁有很多優(yōu)勢,這樣的博客頁面美觀,使用方便、快捷,又能對博文信息妥善保管、處理及時,實現(xiàn)了高度智能化管理。本項目是參考了各大社交網(wǎng)站所開發(fā)的軟件。項目定位于各個希望在互聯(lián)網(wǎng)中擁有自己博
2、客的用戶。該項目包括前臺展示頁面,評論模塊,后臺管理模塊,用戶登錄等模塊。此項目包含了Java,數(shù)據(jù)庫,SpringMVC,Hibernate等技術。關鍵詞:博客系統(tǒng);Java;SpringMVC;Hibernate24AbstractWith the development of the Internet, peoples needs are no longer stuck in the material stage as before, a lot of people looking for spiritual sustenance and hope to have one of thei
3、r own island in the ocean of the Internet. The emergence blog gives people new options, people can write articles and send photos on their blog, can express their own words and feelings to their friends and family. Recently by the popular microblogging is proved that the people of this demand.This a
4、rticle is designed personal blog system is a new blog system in recent years with the development of network technology produced. Compared with the traditional blog, the design has many advantages, such as blog page appearance, easy to use, fast, but also information on the article proper storage, h
5、andling and timely to achieve a high degree of intelligent management.The project reference to the major social networking sites. The project targeted at each want to have your own blog on the Internet. The project includes the reception display page, comment module, backstage management module, use
6、r login and other modules. This project contains Java, database, SpringMVC, Hibernate and other knowledge.Key words: Blog System; Java; SpringMVC; Hibernate目 錄第1章 緒論11.1 研究背景11.2 研究目的及意義11.3 系統(tǒng)設計思想11.4 系統(tǒng)研究內(nèi)容2第2章 相關技術32.1 Java32.2 SpringMVC32.3 Hibernate32.4 Apache Tomcat32.5 HTML/CSS42.6 JavaScript
7、52.7 MD552.8 MySql5第3章 系統(tǒng)分析63.1可行性分析63.2需求分析63.2.1 用戶需求分析63.2.2 功能需求分析7第4章 系統(tǒng)設計與實現(xiàn)94.1 系統(tǒng)功能設計94.1.1 功能模塊設計94.1.2 主要功能流程圖104.2 數(shù)據(jù)庫設計114.2.1 數(shù)據(jù)庫需求分析114.2.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設計124.3 系統(tǒng)實現(xiàn)144.3.1首頁界面144.3.2 登錄界面174.3.3 后臺界面19第5章 系統(tǒng)部署與測試22結(jié)論23參考文獻24致謝25寧夏大學新華學院本科學位論文第1章 緒論1.1 研究背景現(xiàn)在計算機與互聯(lián)網(wǎng)和移動終端的快速發(fā)展,不斷改變著人們的工作、交流、學
8、習以及生活9,尤其社交網(wǎng)站的突飛猛進正使人們的交友方式發(fā)生著翻天覆地的變化。博客是WEB LOG的縮寫,簡單來說就是網(wǎng)絡日記。它是1997年12月由美國的Jorn Barger最早提出的,這些年全球博客獲得了突飛猛進的發(fā)展。據(jù)博客搜索Technorati統(tǒng)計,目前全球平均每5.8秒鐘誕生一個博客。它是一個新型的個人互聯(lián)網(wǎng)出版工具,博客使用者可以很方便地用文字、鏈接、影音、圖片建立起個性化的網(wǎng)絡世界。博客秉承了個人網(wǎng)站的自由精神,但是綜合了激發(fā)創(chuàng)造的新模式,使其更具開放和建設性。它作為一種新表達的方式,它的傳播不僅情緒,包括大量的智慧、意見和思想。某種意義上說,它也是一種新的文化現(xiàn)象,博客的出現(xiàn)
9、和繁榮,真正凸現(xiàn)網(wǎng)絡的知識價值,標志著互聯(lián)網(wǎng)發(fā)展開始步入更高的階段。伴隨著我國市場經(jīng)濟的高度發(fā)展,用戶越來越依賴于大型網(wǎng)站提供的博客系統(tǒng),如新浪微博,騰訊微博,CSDN博客等。雖然這種大型的博客系統(tǒng)有著設計良好,穩(wěn)定性高,知名度高等特點,但是它們不符合互聯(lián)網(wǎng)推崇個性發(fā)展的理念。現(xiàn)在越來越多的人希望有自己的站點。搭建真正屬于他們自己的博客是提升自己價值,更好的展示自己的方式。1.2 研究目的及意義2014年,擁有獨立域名的博客站點,在博客站點總數(shù)中占約0.43%,這表明,絕大多數(shù)的用戶將博客服務商作為他們的博客站點首選。而這一年,中國大陸博客服務商(BSP)持續(xù)大幅增長,博客服務商數(shù)量達到146
10、0家,與去年同期相比增長近55%;大型網(wǎng)絡公司如搜狐、新浪紛紛推出相應的博客服務。過去一年中,中國博客發(fā)展速度整體趨緩,博客用戶增長數(shù)較之去年有小幅上升,博客服務商之間的市場競爭日趨激烈,與早期提供博客服務的運營商相比,傳統(tǒng)門戶及大型公司的博客服務已占據(jù)市場主導地位。在互聯(lián)網(wǎng)如空氣一樣彌漫在世界各個角落的今天,能擁有一塊屬于自己的凈土是很多人追求的目標。不同于商業(yè)博客系統(tǒng),個人博客系統(tǒng)能更好的展示自己,能成為為自己宣傳的廣告牌,能成為面試官為你加分的亮點,而且沒有商業(yè)博客所特有的浮躁。它能真正成為自己書寫的詩篇而不用為了好看的主題交每月收取的費用。目前越來越多的人希望搭建自己的博客,不論是為了
11、記錄生活還是為了商業(yè)宣傳。既然有這樣的需求,那么設計一個簡單易用美觀大方的博客系統(tǒng)自然就成為了頗有意義的研究主題。1.3 系統(tǒng)設計思想根據(jù)個人博客系統(tǒng)的實際需求,本系統(tǒng)的設計思想有以下幾個方面:(1) 實用性:實用性主要體現(xiàn)的是系統(tǒng)能夠解決實際問題,是所有應用系統(tǒng)設計最基本的最主要的原則。(2) 穩(wěn)定性:穩(wěn)定性是系統(tǒng)設計的立足點,若設計的系統(tǒng)故障出現(xiàn)頻繁,就不能夠滿足用戶的要求。(3) 易于更新和維護:系統(tǒng)應實現(xiàn)有關空間數(shù)據(jù)和屬性數(shù)據(jù)的實時更新和維護。維護時只須在服務器上維護即可,數(shù)據(jù)的更新和維護要簡單可行。(4) 易用性:易用性是軟件設計過程中需要重視的問題,應精心設計用戶接口、使系統(tǒng)用戶界
12、面友好,便于用戶理解。具體表現(xiàn)在:(1) 對于用戶輸入的信息,系統(tǒng)應給予回應。(2) 界面簡潔明了和容易操作。(3) 數(shù)據(jù)的顯示和提示信息要簡單明了。1.4 系統(tǒng)研究內(nèi)容本文研究的主要內(nèi)容個人博客系統(tǒng)的設計與實現(xiàn),它的主要作用是為用戶建立一個易于使用與維護的文章管理系統(tǒng)。對于用戶來說具有查詢文章、修改文章、增添評論等功能。本文分為5個部分,分別從緒論、相關技術、系統(tǒng)分析、系統(tǒng)設計、系統(tǒng)實現(xiàn)這幾方面進行詳細研究。緒論部分主要介紹了系統(tǒng)的研究背景,以及系統(tǒng)研究的目的和意義。相關技術部分主要內(nèi)容是系統(tǒng)所應用的技術介紹,包括Java、SpringMVC、Hibernate等技術的介紹。系統(tǒng)分析從可行性
13、分析、需求分析二個方面進行介紹。系統(tǒng)設計主要包括系統(tǒng)功能設計和數(shù)據(jù)庫設計,數(shù)據(jù)庫設計其內(nèi)容是需求分析和邏輯結(jié)構(gòu)設計兩個部分。系統(tǒng)實現(xiàn)部分,主要介紹了首頁界面、在線訂桌界面和更多界面功能模塊的實現(xiàn)。第2章 相關技術2.1 JavaJava是由Sun Microsystems公司推出的Java面向?qū)ο蟪绦蛟O計語言(以下簡稱Java語言)和Java平臺的總稱。由James Gosling和同事們共同研發(fā),并在1995年正式推出。Java最初被稱為Oak,是1991年為消費類電子產(chǎn)品的嵌入式芯片而設計的。1995年更名為Java,并重新設計用于開發(fā)Internet應用程序。用Java實現(xiàn)的HotJav
14、a瀏覽器(支持Java applet)顯示了Java的魅力:跨平臺、動態(tài)Web、Internet計算。從此,Java被廣泛接受并推動了Web的迅速發(fā)展,常用的瀏覽器均支持Javaapplet。另一方面,Java技術也不斷更新。Java自面世后就非常流行,發(fā)展迅速,對C+語言形成有力沖擊。在全球云計算和移動互聯(lián)網(wǎng)的產(chǎn)業(yè)環(huán)境下,Java更具備了顯著優(yōu)勢和廣闊前景。2010年Oracle公司收購Sun Microsystems【1】。與傳統(tǒng)程序不同,Sun 公司在推出 Java 之際就將其作為一種開放的技術。全球數(shù)以萬計的 Java 開發(fā)公司被要求所設計的 Java軟件必須相互兼容?!癑ava 語言
15、靠群體的力量而非公司的力量”是Sun公司的口號之一,并獲得了廣大軟件開發(fā)商的認同。這與微軟公司所倡導的注重精英和封閉式的模式完全不同。2.2 SpringMVCSpring MVC屬于SpringFrameWork的后續(xù)產(chǎn)品,已經(jīng)融合在Spring Web Flow里面。Spring 框架提供了構(gòu)建 Web 應用程序的全功能 MVC 模塊。使用 Spring 可插入的 MVC 架構(gòu),可以選擇是使用內(nèi)置的 Spring Web 框架還可以是 Struts 這樣的 Web 框架。通過策略接口,Spring 框架是高度可配置的,而且包含多種視圖技術,例如 JavaServer Pages(JSP)技
16、術、Velocity、Tiles、iText 和POI。Spring MVC 框架并不知道使用的視圖,所以不會強迫您只使用 JSP 技術。Spring MVC 分離了控制器、模型對象、分派器以及處理程序?qū)ο蟮慕巧?,這種分離讓它們更容易進行定制【2】。2.3 HibernateHibernate是一個開放源代碼的對象關系映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數(shù)據(jù)庫。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibern
17、ate可以在應用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任【3】。2.4 Apache TomcatTomcat是Apache 軟件基金會(Apache Software Foundation)的Jakarta 項目中的一個核心項目,由Apache、Sun 和其他一些公司及個人共同開發(fā)而成。由于有了Sun 的參與和支持,最新的Servlet 和JSP 規(guī)范總是能在Tomcat 中得到體現(xiàn),Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 規(guī)范。因為Tomcat 技術先進、性能穩(wěn)定,而且免費,因而深受Java 愛好者的喜愛并得到了部分軟件開發(fā)商的認可,成為目前比較流
18、行的Web 應用服務器。目前最新版本是8.0。Tomcat 服務器是一個免費的開放源代碼的Web 應用服務器,屬于輕量級應用服務器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調(diào)試JSP 程序的首選。對于一個初學者來說,可以這樣認為,當在一臺機器上配置好Apache 服務器,可利用它響應HTML(標準通用標記語言下的一個應用)頁面的訪問請求。實際上Tomcat 部分是Apache 服務器的擴展,但它是獨立運行的,所以當你運行tomcat 時,它實際上作為一個與Apache 獨立的進程單獨運行的。訣竅是,當配置正確時,Apache 為HTML頁面服務,而Tomcat 實際上運行
19、JSP 頁面和Servlet。另外,Tomcat和IIS等Web服務器一樣,具有處理HTML頁面的功能,另外它還是一個Servlet和JSP容器,獨立的Servlet容器是Tomcat的默認模式。不過,Tomcat處理靜態(tài)HTML的能力不如Apache服務器。目前Tomcat最新版本為8.0【4】。2.5 HTML/CSS超文本標記語言(英文:HyperText Markup Language,HTML)是為“網(wǎng)頁創(chuàng)建和其它可在網(wǎng)頁瀏覽器中看到的信息”設計的一種標記語言。HTML被用來結(jié)構(gòu)化信息例如標題、段落和列表等等,也可用來在一定程度上描述文檔的外觀和語義。1982年由蒂姆伯納斯-李創(chuàng)建,
20、由IETF用簡化的SGML(標準通用標記語言)語法進行進一步發(fā)展的HTML,后來成為國際標準,由萬維網(wǎng)聯(lián)盟(W3C)維護【5】。HTML檔案最常用的擴展名(擴展名)為.html,但是有如DOS等的舊操作系統(tǒng)限制擴展名最多為3個文字符號,所以.htm擴展名也允許使用。而如今.htm擴展名的使用較為減少。編者可以使用任何基本的文本編輯器(例如Notepad等)或所見即所得的HTML編輯器來編輯HTML文件。早期的HTML語法規(guī)則定義較為松散,這有助于不熟悉網(wǎng)絡出版的人使用或變更。網(wǎng)頁瀏覽器接受這類的文件,使之可以顯示語法不嚴格的網(wǎng)頁。隨著時間的流逝,官方標準漸漸趨于嚴格的語法,但是瀏覽器繼續(xù)顯示一
21、些仍不合乎標準的HTML。使用XML的嚴格規(guī)則的XHTML(可擴展超文本標記語言)是W3C計劃中的HTML的接替者。雖然很多人認為它已經(jīng)成為當前的HTML標準,但是它實際上是一個獨立的、和HTML平行發(fā)展的標準。W3C目前建議使用XHTML 1.1、XHTML 1.0或者HTML 4.01標準編寫網(wǎng)頁,但已有許多網(wǎng)頁轉(zhuǎn)用較新的HTML5編碼撰寫(如Google)。層疊樣式表(英語:Cascading Style Sheets,簡寫CSS),又稱串樣式列表、級聯(lián)樣式表、串接樣式表、層疊樣式表、階層式樣式表,一種用來為結(jié)構(gòu)化文檔(如HTML文檔或XML應用)添加樣式(字體、間距和顏色等)的計算機語
22、言,由W3C定義和維護。目前最新版本是CSS2.1,為W3C的推薦標準。CSS3現(xiàn)在已被大部分現(xiàn)代瀏覽器支持,而下一版的CSS4仍在開發(fā)過程中。2.6 JavaScriptJavaScript,一種直譯式腳本語言,是一種動態(tài)類型、弱類型、基于原型的語言,內(nèi)置支持類。它的解釋器被稱為JavaScript引擎,為瀏覽器的一部分,廣泛用于客戶端的腳本語言,最早是在HTML網(wǎng)頁上使用,用來給HTML網(wǎng)頁增加動態(tài)功能。然而現(xiàn)在JavaScript也可被用于網(wǎng)絡服務器,如Node.js。在1995年時,由網(wǎng)景公司的布蘭登艾克,在網(wǎng)景導航者瀏覽器上首次設計實現(xiàn)而成。因為網(wǎng)景公司與昇陽公司合作,網(wǎng)景公司管理層
23、次結(jié)構(gòu)希望它外觀看起來像Java,因此取名為JavaScript。但實際上它的語義與Self及Scheme較為接近。為了獲取技術優(yōu)勢,微軟推出了JScript,與JavaScript同樣可在瀏覽器上運行。為了統(tǒng)一規(guī)格,1997年,在ECMA(歐洲計算機制造商協(xié)會)的協(xié)調(diào)下,由網(wǎng)景、昇陽、微軟和Borland公司組成的工作組確定統(tǒng)一標準:ECMA-262。因為JavaScript兼容于ECMA標準,因此也稱為ECMAScript【6】。2.7 MD5MD5消息摘要算法(英語:MD5 Message-Digest Algorithm),一種被廣泛使用的密碼散列函數(shù),可以產(chǎn)生出一個128位(16字節(jié)
24、)的散列值(hash value),用于確保信息傳輸完整一致。MD5由羅納德設計,于1992年公開,用以取代MD4算法。這套算法的程序在 RFC 1321 中被加以規(guī)范。將數(shù)據(jù)(如一段文字)運算變?yōu)榱硪还潭ㄩL度值,是散列算法的基礎原理。1996年后被證實存在弱點,可以被加以破解,對于需要高度安全性的數(shù)據(jù),專家一般建議改用其他算法,如SHA-1。2004年,證實MD5算法無法防止碰撞,因此無法適用于安全性認證,如SSL公開密鑰認證或是數(shù)字簽章等用途。MD5已經(jīng)廣泛使用在為文件傳輸提供一定的可靠性方面。例如,服務器預先提供一個MD5校驗和,用戶下載完文件以后,用MD5算法計算下載文件的MD5校驗和
25、,然后通過檢查這兩個校驗和是否一致,就能判斷下載的文件是否出錯。2.8 MySqlMySQL是一個關系型數(shù)據(jù)庫管理系統(tǒng),由瑞典 MySQL AB 公司開發(fā),目前屬于 Oracle 公司。MySQL 是最流行的關系型數(shù)據(jù)庫管理系統(tǒng),在 WEB 應用方面 MySQL 是最好的 RDBMS (Relational Database Management System,關系數(shù)據(jù)庫管理系統(tǒng)) 應用軟件之一。MySQL 是一種關聯(lián)數(shù)據(jù)庫管理系統(tǒng),關聯(lián)數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi),這樣就增加了速度并提高了靈活性。MySQL 所使用的 SQL 語言是用于訪問數(shù)據(jù)庫的最常用標準
26、化語言。MySQL 軟件采用了雙授權政策(本詞條“授權政策”),它分為社區(qū)版和商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網(wǎng)站的開發(fā)都選擇 MySQL 作為網(wǎng)站數(shù)據(jù)庫。由于其社區(qū)版的性能卓越,搭配 PHP 和 Apache 可組成良好的開發(fā)環(huán)境。第3章 系統(tǒng)分析系統(tǒng)分析,旨在研究特定系統(tǒng)結(jié)構(gòu)中各部分(各子系統(tǒng))的相互作用,系統(tǒng)的對外接口與界面,以及該系統(tǒng)整體的行為、功能和局限,從而為系統(tǒng)未來的變遷與有關決策提供參考和依據(jù)。系統(tǒng)分析的經(jīng)常目標之一,在于改善決策過程及系統(tǒng)性能,以期達到系統(tǒng)的整體最優(yōu)【7】。系統(tǒng)分析被看作是系統(tǒng)工程的一個重要程序和核心組成部分,以
27、及系統(tǒng)理論的一項應用。 在系統(tǒng)開發(fā)生命周期中,系統(tǒng)分析階段先于系統(tǒng)設計,是系統(tǒng)開發(fā)前期不可或缺的工作。 系統(tǒng)分析大量借用數(shù)學模型、數(shù)學分析、計算機模擬等定量分析方法,試圖在具有不確定約束或邊界條件的情況下,對系統(tǒng)要素進行綜合分析、描述,得出較為準確或合理的結(jié)論。在信息技術領域,系統(tǒng)分析的發(fā)展相對比較成熟,并與計算機系統(tǒng)及軟件工程中的需求分析有著密切的關系。 隨著計算機技術、運籌學的普及以及結(jié)構(gòu)化分析、規(guī)約語言等系統(tǒng)分析方法的發(fā)展,系統(tǒng)分析方法在跨學科領域也獲得日益廣泛的應用,被用于研究、分析、改善許多復雜系統(tǒng)。3.1可行性分析博客系統(tǒng)無論是在應用的深度還是廣度上都是一個逐步發(fā)展的過程。開發(fā)一個
28、局部系統(tǒng)時要充分考慮到局部系統(tǒng)和整個目標系統(tǒng)之前的相容性和完整性,以利于今后整個系統(tǒng)的建立。隨著互聯(lián)網(wǎng)科技的快速發(fā)展,博客越來越受到人們的關注。各種博客網(wǎng)站,已大量的出現(xiàn)在了個大城市。特別是在年輕人群體中已經(jīng)成為趨勢。同時,隨著全國人民的物質(zhì)、精神和文化生活的高度提高,人們已經(jīng)不再僅僅停留在追求物質(zhì)滿足的程度,而是要追求精神上的需求,正因為如此博客的出現(xiàn),正迎合了這些人的口味,博客在中國有著極大的發(fā)展空間和良好的發(fā)展前景。當代大學生與白領工作人士作為社會中的重要群體,博客在他們生活中起著重要作用。因此,博客系統(tǒng)的設計有著良好的現(xiàn)實意義。綜上分析,決定利用SpringMVC、Hibernate系
29、統(tǒng)框架和Java語言進行構(gòu)建和設計個人博客系統(tǒng)。3.2需求分析3.2.1 用戶需求分析隨著互聯(lián)網(wǎng)發(fā)展水平的提高,博客在人們生活中占有越來越重要的地位。個人博客系統(tǒng)解決了因為不懂技術的限制而輕松擁有自己博客的難題,是一個輕松在互聯(lián)網(wǎng)中擁有自己站點的模式。博客系統(tǒng)對于日常使用網(wǎng)絡的用戶很常見,但是現(xiàn)在充斥在網(wǎng)絡中的微博并不是屬于個人的站點,而是屬于博客服務提供商提供的一種服務,對于這種服務雖然有使用方便、搭建簡單、擁有穩(wěn)定的服務器和龐大的社交圈等能力,但是它缺乏個性,缺乏完全的自定義功能,甚至有些服務提供商用更換主題的功能收費,這不符合互聯(lián)網(wǎng)自由的、崇尚個性發(fā)展的主張。因此,個人博客系統(tǒng)的一個最主
30、要的目的就是為廣大互聯(lián)網(wǎng)用戶提供一種搭建方便使用方便并且廉價的博客系統(tǒng)。3.2.2 功能需求分析博客網(wǎng)站系統(tǒng)的總目標是:在計算機網(wǎng)絡,數(shù)據(jù)庫和先進的開發(fā)平臺上,利用現(xiàn)有的軟件,配置一定的硬件,開發(fā)一個具有開放體系結(jié)構(gòu)的、易擴充的、易維護的、具有良好人機交互界面的個人博客網(wǎng)站,為網(wǎng)絡用戶提供進行在線交流的網(wǎng)絡平臺。通過個人博客網(wǎng)站可以結(jié)交更多的朋友,表達更多的想法,它隨時可以發(fā)布文章。具體的要求如下:(1) 博主可以簡單的添加和刪除文章;(2) 獨立于具體的數(shù)據(jù)庫平臺。對于與數(shù)據(jù)庫交互的部分充分考慮兼容性;(3) 容易在原先基礎上進行二次開發(fā);(4) 中間基礎平臺的無型性。盡量采用開放的標準技術
31、,達到跨平臺運行的效果;為了達到以上的開發(fā)目的,個人博客網(wǎng)站應遵循一定的設計和開發(fā)與原則:(1) 模塊接口定義清晰;(2) 基礎類庫和接口設計合理,盡量建立叮擴展的接口和抽象類;(3) 數(shù)據(jù)庫操作使用標準SQL語句,如果一定要使用有差別的SQL語句,則盡量集中在一起,以減少將來維護和移植的難度;(4) 采用開放的標準和工具;博客系統(tǒng)通常提供兩種服務:(1) 信息服務,它可分為:文章顯示,熱點文章推薦,博主風采(2) 留言服務:游客可以對系統(tǒng)進行留言或發(fā)表看法意見在此,我參考現(xiàn)有的博客網(wǎng)站,采用Browser/Server結(jié)構(gòu),將個人博客網(wǎng)站劃分為兩個子系統(tǒng):前臺,后臺。下面分析各個子系統(tǒng)的功能
32、需求。前臺:在前臺的功能實現(xiàn)上,可以分為以下幾個部分:(1) 用戶登錄:網(wǎng)站用戶用個人注冊的帳號,密碼登錄到網(wǎng)站。網(wǎng)站檢測用戶的帳號,密碼并給予其相應的權限對網(wǎng)站進行操作。(2) 文章查詢和留言:用戶可以瀏覽博客中的文章同時給文章留言。后臺:通過計算機網(wǎng)絡將前臺與后臺的數(shù)據(jù)庫相連,網(wǎng)站管理員將從前臺得到的信息進行處理,實現(xiàn)文章管理,朋友圈,用戶設置及博主設置等子系統(tǒng)。(1) 文章管理:管理員對文章進行添加,刪除,更新等操作。(2) 評論管理:查詢,刪除評論。(3) 分類管理:添加,修改,刪除分類。(4) 博主設置:對博主的信息等進行操作。第4章 系統(tǒng)設計與實現(xiàn)4.1 系統(tǒng)功能設計4.1.1 功
33、能模塊設計本系統(tǒng)實現(xiàn)個人博客系統(tǒng)的功能。采用模塊化的設計方法本系統(tǒng),系統(tǒng)總體功能模塊如圖4-1所示:個人博客系統(tǒng)前臺模塊后臺模塊登錄模塊圖4-1 系統(tǒng)功能模塊圖系統(tǒng)功能模塊圖描述如下: (1) 前臺模塊:來訪用戶瀏覽文章,留言。(2) 后臺模塊:管理員對文章,評論,分類,個人資料進行操作。(3) 登錄模塊:管理員登錄。前臺功能模塊如圖4-2所示: 添加評論瀏覽文章首頁標簽分類前臺模塊圖4-2 前臺功能模塊圖在用戶進入前臺頁面后載入首頁,用戶可以瀏覽文章、添加評論,可以根據(jù)標簽瀏覽相應分類下的文章。后臺功能模塊如圖4-3所示:后臺模塊個人資料管理評論管理分類管理文章管理新增文章刪除文章修改文章新
34、增分類刪除分類修改分類刪除評論修改密碼修改用戶名修改電子郵件圖4-3 后臺功能模塊圖用戶在登錄后將進入后臺頁面,在后臺頁面中可以選擇對文章、分類、評論以及個人資料進行相應的操作。4.1.2 主要功能流程圖前臺模塊功能流程如圖4-4所示:文章瀏覽添加評論加載主頁內(nèi)容登錄頁面分類查找進入頁面圖4-4 前臺模塊功能流程圖后臺模塊功能流程如圖4-5所示:開始登錄成功?功?后臺管理頁面文章管理評論管理分類管理用戶管理添加文章刪除評論添加分類修改分類刪除分類修改信息修改文章刪除文章是否圖4-5 后臺模塊功能流程圖4.2 數(shù)據(jù)庫設計4.2.1 數(shù)據(jù)庫需求分析用戶的需求具體體現(xiàn)在各種信息的提供、保存、更新和查
35、詢,這就要求數(shù)據(jù)庫結(jié)構(gòu)能充分滿足各種信息的輸出和輸入。收集基本數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)處理的流程,組成一份詳盡的數(shù)據(jù)字典是數(shù)據(jù)庫設計的基礎【8】。數(shù)據(jù)字典是關于數(shù)據(jù)庫中數(shù)據(jù)的描述,即元數(shù)據(jù),而不是數(shù)據(jù)本身。數(shù)據(jù)本身將存放在物理數(shù)據(jù)庫中,由數(shù)據(jù)庫管理系統(tǒng)管理。數(shù)據(jù)字典有助于這些數(shù)據(jù)的進一步管理和控制,為設計人員和數(shù)據(jù)庫管理員在數(shù)據(jù)庫設計、實現(xiàn)和運行階段控制有關數(shù)據(jù)提供依據(jù)【9】。用戶信息數(shù)據(jù)字典主要表示管理的用戶信息數(shù)據(jù)結(jié)構(gòu),用戶信息數(shù)據(jù)字典如圖4-6所示:名字:用戶信息別名:描述:用戶的個人信息,用于對用戶的確認和更新。定義:用戶信息=ID+用戶名+密碼+郵箱號碼位置:輸入登錄頁面圖4-6 用戶信
36、息數(shù)據(jù)字典文章信息數(shù)據(jù)字典主要表示了文章對象的數(shù)據(jù)結(jié)構(gòu),文章信息數(shù)據(jù)字典如圖4-7所示:名字:文章信息別名:描述:文章的信息,用戶可對其增添和更新和刪除。定義:文章信息=ID+文章名+所屬類別+內(nèi)容+修改日期位置:輸入到用戶瀏覽器(前臺及后臺)圖4-7 文章信息數(shù)據(jù)字典分類信息主要保存對文章的分類,分類信息數(shù)據(jù)字典表示了其數(shù)據(jù)結(jié)構(gòu),分類信息數(shù)據(jù)字典如圖4-8所示:名字:分類信息別名:描述:文章的分類信息,用戶可根據(jù)其分類查找文章。定義:分類信息=ID+類別名位置:輸入到用戶瀏覽器(前臺及后臺)圖4-8 分類信息數(shù)據(jù)字典評論信息數(shù)據(jù)字典表示了評論信息對象的數(shù)據(jù)結(jié)構(gòu),評論信息數(shù)據(jù)字典如圖4-9所示
37、:名字:評論信息別名:描述:對文章的評論信息,用戶可對齊增添和刪除。定義:評論信息=ID+評論人名+評論內(nèi)容+評論時間位置:輸入到用戶瀏覽器(前臺及后臺)圖4-9 評論信息數(shù)據(jù)字典4.2.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設計本系統(tǒng)使用的是MySQL數(shù)據(jù)庫。MySQL 數(shù)據(jù)庫使用起來非常的方便簡單,并且數(shù)據(jù)存儲量也比較大,具有很好的再造和重寫特性,這有利于我們管理和維護數(shù)據(jù),所以普遍認為它是比較適合于中小型網(wǎng)站開發(fā)的數(shù)據(jù)庫【10】。管理員用戶表主要儲存管理員用戶信息,在登錄時,系統(tǒng)會訪問管理員用戶表確定登錄的用戶名和密碼是否正確。而密碼字段需要使用加密手段來保證密碼的安全性。管理員用戶表的設計如表4-1:表4
38、-1 管理員用戶表字段名類型允許為空鍵附加User_idBigint(20)NoPrimaryKeyAuto_incrementUser_nameVarchar(64)YesUser_emailVarchar(64)YesUser_qqVarchar(16)YesPasswordVarchar(32)YesUser_statusInt(12)Yes文章信息表主要存儲的是文章的ID,文章名,文章內(nèi)容等。文章信息表的設計如表4-2所示:表4-2 文章信息表字段名類型允許為空鍵附加Post_idBigint(20)NoPrimaryKeyAuto_incrementAuthor_idBigint(2
39、0)YesPost_dateDatetimeYesPost_contentLongtextYesPost_titleTextYesComment_statusInt(8)YesCategory_idBigint(20)YesPost_modified_dateDatetimeYesComment_countInt(128)YesPost_statusInt(8)Yes評論信息表主要存儲評論的ID,內(nèi)容,所評論的文章已經(jīng)評論時間等信息。評論信息表的設計如表4-2所示:表4-3 評論信息表字段名類型允許為空鍵附加Comment_idBigint(20)NoPrimarykeyAuto_increm
40、entPost_idBigint(20)YesComment_authorTinytextYesComment_author_emailVarchar(100)YesComment_dateDatetimeYesComment_contentTextYesComment_parentBigint(20)YesUser_idBigint(20)Yes類別信息表主要存儲類別的名稱和ID,類別信息表的設計如表4-2所示:表4-4 類別信息表字段名類型允許為空鍵附加Cat_idBigint(20)NoPrimaryKeyAuto_incrementCat_nameVarchar(64)YesCat_d
41、escriptionLongtextYesCat_parentBigint(20)Yes4.3 系統(tǒng)實現(xiàn)4.3.1首頁界面本系統(tǒng)首頁界面設計有文章列表、文章分類,設計簡潔、美觀、大方,具體系統(tǒng)首頁如圖4-10所示:圖4-10 系統(tǒng)首頁實現(xiàn)首頁功能界面的核心代碼如下:凜様Toggle navigation凜様關于我聯(lián)系方式Settings 歡迎訪問凜的博客如果喜歡的話請常來轉(zhuǎn)轉(zhuǎn),博文不定期更新。 類別 可以看看大神們的博客小涵 Copyright © Company 2015這段代碼使用了HTML/CSS創(chuàng)建了一個首頁界面,并用AJAX從后臺讀
42、取數(shù)據(jù)顯示在頁面中。同時這些代碼的功能創(chuàng)建了五個模塊,分別為文章顯示、分類顯示、關于我、聯(lián)系方式和登錄。并且做相關鏈接,也就是建立最基本的界面和按鈕。4.3.2 登錄界面登錄界面提供為管理員登錄的入口。登錄后,可以查看文章、分類、評論信息,并且可以對部分信息進行操作。具體登錄界面如圖4-11所示: 圖4-11 登錄界面實現(xiàn)在線訂桌界面的核心代碼如下:登陸請登錄 記住我確定 !- Bootstrap core JavaScript以上這段代碼首先用HTML/CSS創(chuàng)建了登錄界面,用Bootstrap Validate作為這個界面表單的數(shù)據(jù)驗證工具【11】。4.3.3 后臺界面后臺界面包括了增加文章、修改文章、分類管理、評論管理以及用戶資料管理功能。具體系統(tǒng)更多界面如圖4-12所示: 圖4-12 后臺界面實現(xiàn)首頁功能界面的核心代碼如下:凜様 Toggle navigation凜様關于我聯(lián)系方式凜 Settings!- Profile -!- Help -div class=con
- 溫馨提示:
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. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。