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