




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于java的个人博客系统-毕业设计PAGEIPAGEIII宁夏大学新华学院本科学位论文摘要随着互联网的发展,人们的需求已不再像以前停留在物质阶段,很多人希望寻找精神的寄托,希望能在互联网的海洋中有一片属于自己的岛屿。博客的出现给了人们新的选择,人们可以在自己的博客上写文章发照片,可以向自己的亲朋好友表达自己的话语和感情。而最近几年非常受大众欢迎的微博则证明了人们的这种需求。本文设计的个人博客系统是近年来随着网络技术的发展而产生的一种新型博客系统。与传统博客相比,本设计拥有很多优势,这样的博客页面美观,使用方便、快捷,又能对博文信息妥善保管、处理及时,实现了高度智能化管理。本项目是参考了各大社交网站所开发的软件。项目定位于各个希望在互联网中拥有自己博客的用户。该项目包括前台展示页面,评论模块,后台管理模块,用户登录等模块。此项目包含了Java,数据库,SpringMVC,Hibernate等技术。关键词:博客系统;Java;SpringMVC;Hibernate基于java的个人博客系统-毕业设计全文共29页,当前为第1页。基于java的个人博客系统-毕业设计全文共29页,当前为第1页。AbstractWiththedevelopmentoftheInternet,people'sneedsarenolongerstuckinthematerialstageasbefore,alotofpeoplelookingforspiritualsustenanceandhopetohaveoneoftheirownislandintheoceanoftheInternet.Theemergencebloggivespeoplenewoptions,peoplecanwritearticlesandsendphotosontheirblog,canexpresstheirownwordsandfeelingstotheirfriendsandfamily.Recentlybythepopularmicrobloggingisprovedthatthepeopleofthisdemand.Thisarticleisdesignedpersonalblogsystemisanewblogsysteminrecentyearswiththedevelopmentofnetworktechnologyproduced.Comparedwiththetraditionalblog,thedesignhasmanyadvantages,suchasblogpageappearance,easytouse,fast,butalsoinformationonthearticleproperstorage,handlingandtimelytoachieveahighdegreeofintelligentmanagement.Theprojectreferencetothemajorsocialnetworkingsites.TheprojecttargetedateachwanttohaveyourownblogontheInternet.Theprojectincludesthereceptiondisplaypage,commentmodule,backstagemanagementmodule,userloginandothermodules.ThisprojectcontainsJava,database,SpringMVC,Hibernateandotherknowledge.Keywords:BlogSystem;Java;SpringMVC;Hibernate基于java的个人博客系统-毕业设计全文共29页,当前为第2页。基于java的个人博客系统-毕业设计全文共29页,当前为第2页。目录第1章绪论11.1研究背景11.2研究目的及意义11.3系统设计思想11.4系统研究内容2第2章相关技术32.1Java32.2SpringMVC32.3Hibernate32.4ApacheTomcat32.5HTML/CSS42.6JavaScript52.7MD552.8MySql5第3章系统分析63.1可行性分析63.2需求分析63.2.1用户需求分析63.2.2功能需求分析7第4章系统设计与实现94.1系统功能设计94.1.1功能模块设计94.1.2主要功能流程图104.2数据库设计114.2.1数据库需求分析114.2.2数据库逻辑结构设计124.3系统实现144.3.1首页界面144.3.2登录界面174.3.3后台界面19第5章系统部署与测试22基于java的个人博客系统-毕业设计全文共29页,当前为第3页。结论23基于java的个人博客系统-毕业设计全文共29页,当前为第3页。参考文献24致谢25基于java的个人博客系统-毕业设计全文共29页,当前为第4页。基于java的个人博客系统-毕业设计全文共29页,当前为第4页。第1章绪论1.1研究背景现在计算机与互联网和移动终端的快速发展,不断改变着人们的工作、交流、学习以及生活9,尤其社交网站的突飞猛进正使人们的交友方式发生着翻天覆地的变化。博客是WEBLOG的缩写,简单来说就是网络日记。它是1997年12月由美国的JornBarger最早提出的,这些年全球博客获得了突飞猛进的发展。据博客搜索Technorati统计,目前全球平均每5.8秒钟诞生一个博客。它是一个新型的个人互联网出版工具,博客使用者可以很方便地用文字、链接、影音、图片建立起个性化的网络世界。博客秉承了个人网站的自由精神,但是综合了激发创造的新模式,使其更具开放和建设性。它作为一种新表达的方式,它的传播不仅情绪,包括大量的智慧、意见和思想。某种意义上说,它也是一种新的文化现象,博客的出现和繁荣,真正凸现网络的知识价值,标志着互联网发展开始步入更高的阶段。伴随着我国市场经济的高度发展,用户越来越依赖于大型网站提供的博客系统,如新浪微博,腾讯微博,CSDN博客等。虽然这种大型的博客系统有着设计良好,稳定性高,知名度高等特点,但是它们不符合互联网推崇个性发展的理念。现在越来越多的人希望有自己的站点。搭建真正属于他们自己的博客是提升自己价值,更好的展示自己的方式。1.2研究目的及意义2014年,拥有独立域名的博客站点,在博客站点总数中占约0.43%,这表明,绝大多数的用户将博客服务商作为他们的博客站点首选。而这一年,中国大陆博客服务商(BSP)持续大幅增长,博客服务商数量达到1460家,与去年同期相比增长近55%;大型网络公司如搜狐、新浪纷纷推出相应的博客服务。过去一年中,中国博客发展速度整体趋缓,博客用户增长数较之去年有小幅上升,博客服务商之间的市场竞争日趋激烈,与早期提供博客服务的运营商相比,传统门户及大型公司的博客服务已占据市场主导地位。在互联网如空气一样弥漫在世界各个角落的今天,能拥有一块属于自己的净土是很多人追求的目标。不同于商业博客系统,个人博客系统能更好的展示自己,能成为为自己宣传的广告牌,能成为面试官为你加分的亮点,而且没有商业博客所特有的浮躁。它能真正成为自己书写的诗篇而不用为了好看的主题交每月收取的费用。目前越来越多的人希望搭建自己的博客,不论是为了记录生活还是为了商业宣传。既然有这样的需求,那么设计一个简单易用美观大方的博客系统自然就成为了颇有意义的研究主题。1.3系统设计思想根据个人博客系统的实际需求,本系统的设计思想有以下几个方面:(1)实用性:实用性主要体现的是系统能够解决实际问题,是所有应用系统设计最基基于java的个人博客系统-毕业设计全文共29页,当前为第5页。本的最主要的原则。基于java的个人博客系统-毕业设计全文共29页,当前为第5页。(2)稳定性:稳定性是系统设计的立足点,若设计的系统故障出现频繁,就不能够满足用户的要求。(3)易于更新和维护:系统应实现有关空间数据和属性数据的实时更新和维护。维护时只须在服务器上维护即可,数据的更新和维护要简单可行。(4)易用性:易用性是软件设计过程中需要重视的问题,应精心设计用户接口、使系统用户界面友好,便于用户理解。具体表现在:(1)对于用户输入的信息,系统应给予回应。(2)界面简洁明了和容易操作。(3)数据的显示和提示信息要简单明了。1.4系统研究内容本文研究的主要内容个人博客系统的设计与实现,它的主要作用是为用户建立一个易于使用与维护的文章管理系统。对于用户来说具有查询文章、修改文章、增添评论等功能。本文分为5个部分,分别从绪论、相关技术、系统分析、系统设计、系统实现这几方面进行详细研究。绪论部分主要介绍了系统的研究背景,以及系统研究的目的和意义。相关技术部分主要内容是系统所应用的技术介绍,包括Java、SpringMVC、Hibernate等技术的介绍。系统分析从可行性分析、需求分析二个方面进行介绍。系统设计主要包括系统功能设计和数据库设计,数据库设计其内容是需求分析和逻辑结构设计两个部分。系统实现部基于java的个人博客系统-毕业设计全文共29页,当前为第6页。分,主要介绍了首页界面、在线订桌界面和更多界面功能模块的实现。基于java的个人博客系统-毕业设计全文共29页,当前为第6页。第2章相关技术2.1JavaJava是由SunMicrosystems公司推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。由JamesGosling和同事们共同研发,并在1995年正式推出。Java最初被称为Oak,是1991年为消费类电子产品的嵌入式芯片而设计的。1995年更名为Java,并重新设计用于开发Internet应用程序。用Java实现的HotJava浏览器(支持Javaapplet)显示了Java的魅力:跨平台、动态Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器均支持Javaapplet。另一方面,Java技术也不断更新。Java自面世后就非常流行,发展迅速,对C++语言形成有力冲击。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。2010年Oracle公司收购SunMicrosystems【1】。与传统程序不同,Sun公司在推出Java之际就将其作为一种开放的技术。全球数以万计的Java开发公司被要求所设计的Java软件必须相互兼容。“Java语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同。2.2SpringMVCSpringMVC属于SpringFrameWork的后续产品,已经融合在SpringWebFlow里面。Spring框架提供了构建Web应用程序的全功能MVC模块。使用Spring可插入的MVC架构,可以选择是使用内置的SpringWeb框架还可以是Struts这样的Web框架。通过策略接口,Spring框架是高度可配置的,而且包含多种视图技术,例如JavaServerPages(JSP)技术、Velocity、Tiles、iText和POI。SpringMVC框架并不知道使用的视图,所以不会强迫您只使用JSP技术。SpringMVC分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制【2】。2.3HibernateHibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任【3】。2.4ApacheTomcatTomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。由于有了Sun的基于java的个人博客系统-毕业设计全文共29页,当前为第7页。参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet2.4和JSP2.0规范。因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。目前最新版本是8.0。基于java的个人博客系统-毕业设计全文共29页,当前为第7页。Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。诀窍是,当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。目前Tomcat最新版本为8.0【4】。2.5HTML/CSS超文本标记语言(英文:HyperTextMarkupLanguage,HTML)是为“网页创建和其它可在网页浏览器中看到的信息”设计的一种标记语言。HTML被用来结构化信息——例如标题、段落和列表等等,也可用来在一定程度上描述文档的外观和语义。1982年由蒂姆·伯纳斯-李创建,由IETF用简化的SGML(标准通用标记语言)语法进行进一步发展的HTML,后来成为国际标准,由万维网联盟(W3C)维护【5】。HTML档案最常用的扩展名(扩展名)为.html,但是有如DOS等的旧操作系统限制扩展名最多为3个文字符号,所以.htm扩展名也允许使用。而如今.htm扩展名的使用较为减少。编者可以使用任何基本的文本编辑器(例如Notepad等)或所见即所得的HTML编辑器来编辑HTML文件。早期的HTML语法规则定义较为松散,这有助于不熟悉网络出版的人使用或变更。网页浏览器接受这类的文件,使之可以显示语法不严格的网页。随着时间的流逝,官方标准渐渐趋于严格的语法,但是浏览器继续显示一些仍不合乎标准的HTML。使用XML的严格规则的XHTML(可扩展超文本标记语言)是W3C计划中的HTML的接替者。虽然很多人认为它已经成为当前的HTML标准,但是它实际上是一个独立的、和HTML平行发展的标准。W3C目前建议使用XHTML1.1、XHTML1.0或者HTML4.01标准编写网页,但已有许多网页转用较新的HTML5编码撰写(如Google)。层叠样式表(英语:CascadingStyleSheets,简写CSS),又称串样式列表、级联样式表、串接样式表、层叠样式表、階層式樣式表,一种用来为结构化文档(如HTML文档或XML应用)添加样式(字体、间距和颜色等)的计算机语言,由W3C定义和维护。目前最新版本是CSS2.1,为W3C的推荐标准。CSS3现在已被大部分现代浏览器支持,而下一版的基于java的个人博客系统-毕业设计全文共29页,当前为第8页。CSS4仍在开发过程中。基于java的个人博客系统-毕业设计全文共29页,当前为第8页。2.6JavaScriptJavaScript,一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML网页上使用,用来给HTML网页增加动态功能。然而现在JavaScript也可被用于网络服务器,如Node.js。在1995年时,由网景公司的布兰登艾克,在网景导航者浏览器上首次设计实现而成。因为网景公司与昇阳公司合作,网景公司管理层次结构希望它外观看起来像Java,因此取名为JavaScript。但实际上它的语义与Self及Scheme较为接近。为了获取技术优势,微软推出了JScript,与JavaScript同样可在浏览器上运行。为了统一规格,1997年,在ECMA(欧洲计算机制造商协会)的协调下,由网景、昇阳、微软和Borland公司组成的工作组确定统一标准:ECMA-262。因为JavaScript兼容于ECMA标准,因此也称为ECMAScript【6】。2.7MD5MD5消息摘要算法(英语:MD5Message-DigestAlgorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hashvalue),用于确保信息传输完整一致。MD5由罗纳德设计,于1992年公开,用以取代MD4算法。这套算法的程序在RFC1321中被加以规范。将数据(如一段文字)运算变为另一固定长度值,是散列算法的基础原理。1996年后被证实存在弱点,可以被加以破解,对于需要高度安全性的数据,专家一般建议改用其他算法,如SHA-1。2004年,证实MD5算法无法防止碰撞,因此无法适用于安全性认证,如SSL公开密钥认证或是数字签章等用途。MD5已经广泛使用在为文件传输提供一定的可靠性方面。例如,服务器预先提供一个MD5校验和,用户下载完文件以后,用MD5算法计算下载文件的MD5校验和,然后通过检查这两个校验和是否一致,就能判断下载的文件是否出错。2.8MySqlMySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle公司。MySQL是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem,关系数据库管理系统)应用软件之一。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。由于其社区版的基于java的个人博客系统-毕业设计全文共29页,当前为第9页。性能卓越,搭配PHP和Apache可组成良好的开发环境。基于java的个人博客系统-毕业设计全文共29页,当前为第9页。第3章系统分析系统分析,旨在研究特定系统结构中各部分(各子系统)的相互作用,系统的对外接口与界面,以及该系统整体的行为、功能和局限,从而为系统未来的变迁与有关决策提供参考和依据。系统分析的经常目标之一,在于改善决策过程及系统性能,以期达到系统的整体最优【7】。系统分析被看作是系统工程的一个重要程序和核心组成部分,以及系统理论的一项应用。在系统开发生命周期中,系统分析阶段先于系统设计,是系统开发前期不可或缺的工作。系统分析大量借用数学模型、数学分析、计算机模拟等定量分析方法,试图在具有不确定约束或边界条件的情况下,对系统要素进行综合分析、描述,得出较为准确或合理的结论。在信息技术领域,系统分析的发展相对比较成熟,并与计算机系统及软件工程中的需求分析有着密切的关系。随着计算机技术、运筹学的普及以及结构化分析、规约语言等系统分析方法的发展,系统分析方法在跨学科领域也获得日益广泛的应用,被用于研究、分析、改善许多复杂系统。3.1可行性分析博客系统无论是在应用的深度还是广度上都是一个逐步发展的过程。开发一个局部系统时要充分考虑到局部系统和整个目标系统之前的相容性和完整性,以利于今后整个系统的建立。随着互联网科技的快速发展,博客越来越受到人们的关注。各种博客网站,已大量的出现在了个大城市。特别是在年轻人群体中已经成为趋势。同时,随着全国人民的物质、精神和文化生活的高度提高,人们已经不再仅仅停留在追求物质满足的程度,而是要追求精神上的需求,正因为如此博客的出现,正迎合了这些人的口味,博客在中国有着极大的发展空间和良好的发展前景。当代大学生与白领工作人士作为社会中的重要群体,博客在他们生活中起着重要作用。因此,博客系统的设计有着良好的现实意义。综上分析,决定利用SpringMVC、Hibernate系统框架和Java语言进行构建和设计个人博客系统。3.2需求分析3.2.1用户需求分析随着互联网发展水平的提高,博客在人们生活中占有越来越重要的地位。个人博客系统解决了因为不懂技术的限制而轻松拥有自己博客的难题,是一个轻松在互联网中拥有自己站点的模式。博客系统对于日常使用网络的用户很常见,但是现在充斥在网络中的微博并不是属于基于java的个人博客系统-毕业设计全文共29页,当前为第10页。个人的站点,而是属于博客服务提供商提供的一种服务,对于这种服务虽然有使用方便、搭建简单、拥有稳定的服务器和庞大的社交圈等能力,但是它缺乏个性,缺乏完全的自定义功能,甚至有些服务提供商用更换主题的功能收费,这不符合互联网自由的、崇尚个性发展的主张。基于java的个人博客系统-毕业设计全文共29页,当前为第10页。因此,个人博客系统的一个最主要的目的就是为广大互联网用户提供一种搭建方便使用方便并且廉价的博客系统。3.2.2功能需求分析博客网站系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的个人博客网站,为网络用户提供进行在线交流的网络平台。通过个人博客网站可以结交更多的朋友,表达更多的想法,它随时可以发布文章。具体的要求如下:(1)博主可以简单的添加和删除文章;(2)独立于具体的数据库平台。对于与数据库交互的部分充分考虑兼容性;(3)容易在原先基础上进行二次开发;(4)中间基础平台的无型性。尽量采用开放的标准技术,达到跨平台运行的效果;为了达到以上的开发目的,个人博客网站应遵循一定的设计和开发与原则:(1)模块接口定义清晰;(2)基础类库和接口设计合理,尽量建立叮扩展的接口和抽象类;(3)数据库操作使用标准SQL语句,如果一定要使用有差别的SQL语句,则尽量集中在一起,以减少将来维护和移植的难度;(4)采用开放的标准和工具;博客系统通常提供两种服务:(1)信息服务,它可分为:文章显示,热点文章推荐,博主风采(2)留言服务:游客可以对系统进行留言或发表看法意见在此,我参考现有的博客网站,采用Browser/Server结构,将个人博客网站划分为两个子系统:前台,后台。下面分析各个子系统的功能需求。前台:在前台的功能实现上,可以分为以下几个部分:(1)用户登录:网站用户用个人注册的帐号,密码登录到网站。网站检测用户的帐号,密码并给予其相应的权限对网站进行操作。(2)文章查询和留言:用户可以浏览博客中的文章同时给文章留言。基于java的个人博客系统-毕业设计全文共29页,当前为第11页。后台:基于java的个人博客系统-毕业设计全文共29页,当前为第11页。通过计算机网络将前台与后台的数据库相连,网站管理员将从前台得到的信息进行处理,实现文章管理,朋友圈,用户设置及博主设置等子系统。(1)文章管理:管理员对文章进行添加,删除,更新等操作。(2)评论管理:查询,删除评论。(3)分类管理:添加,修改,删除分类。(4)博主设置:对博主的信息等进行操作。基于java的个人博客系统-毕业设计全文共29页,当前为第12页。基于java的个人博客系统-毕业设计全文共29页,当前为第12页。第4章系统设计与实现4.1系统功能设计4.1.1功能模块设计本系统实现个人博客系统的功能。采用模块化的设计方法本系统,系统总体功能模块如图4-1所示:个人博客系统前台模块个人博客系统前台模块后台模块登录模块系统功能模块图描述如下:(1)前台模块:来访用户浏览文章,留言。(2)后台模块:管理员对文章,评论,分类,个人资料进行操作。(3)登录模块:管理员登录。前台功能模块如图4-2所示:添加评论添加评论浏览文章首页标签分类前台模块图4-2前台功能模块图在用户进入前台页面后载入首页,用户可以浏览文章、添加评论,可以根据标签浏览基于java的个人博客系统-毕业设计全文共29页,当前为第13页。相应分类下的文章。后台功能模块如图4-3所示:基于java的个人博客系统-毕业设计全文共29页,当前为第13页。后台模块后台模块个人资料管理评论管理分类管理文章管理新增文章删除文章修改文章新增分类删除分类修改分类删除评论修改密码修改用户名修改电子邮件图4-3后台功能模块图用户在登录后将进入后台页面,在后台页面中可以选择对文章、分类、评论以及个人资料进行相应的操作。4.1.2主要功能流程图前台模块功能流程如图4-4所示:文章浏览文章浏览添加评论加载主页内容登录页面分类查找进入页面图4-4前台模块功能流程图后台模块功能流程如图4-5所示:基于java的个人博客系统-毕业设计全文共29页,当前为第14页。基于java的个人博客系统-毕业设计全文共29页,当前为第14页。开始开始登录成功?功?后台管理页面文章管理评论管理分类管理用户管理添加文章删除评论添加分类修改分类删除分类修改信息修改文章删除文章是否图4-5后台模块功能流程图4.2数据库设计4.2.1数据库需求分析用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构及数据处理的流程,组成一份详尽的数据字典是数据库设计的基础【8】。数据字典是关于数据库中数据的描述,即元数据,而不是数据本身。数据本身将存放在物理数据库中,由数据库管理系统管理。数据字典有助于这些数据的进一步管理和控制,为设计人员和数据库管理员在数据库设计、实现和运行阶段控制有关数据提供依据【9】。用户信息数据字典主要表示管理的用户信息数据结构,用户信息数据字典如图4-6所示:名字:用户信息名字:用户信息别名:描述:用户的个人信息,用于对用户的确认和更新。定义:用户信息=ID+用户名+密码+邮箱号码位置:输入登录页面图4-6用户信息数据字典基于java的个人博客系统-毕业设计全文共29页,当前为第15页。基于java的个人博客系统-毕业设计全文共29页,当前为第15页。文章信息数据字典主要表示了文章对象的数据结构,文章信息数据字典如图4-7所示:名字:文章信息名字:文章信息别名:描述:文章的信息,用户可对其增添和更新和删除。定义:文章信息=ID+文章名+所属类别+内容+修改日期位置:输入到用户浏览器(前台及后台)图4-7文章信息数据字典分类信息主要保存对文章的分类,分类信息数据字典表示了其数据结构,分类信息数据字典如图4-8所示:名字:分类信息名字:分类信息别名:描述:文章的分类信息,用户可根据其分类查找文章。定义:分类信息=ID+类别名位置:输入到用户浏览器(前台及后台)图4-8分类信息数据字典评论信息数据字典表示了评论信息对象的数据结构,评论信息数据字典如图4-9所示:名字:评论信息名字:评论信息别名:描述:对文章的评论信息,用户可对齐增添和删除。定义:评论信息=ID+评论人名+评论内容+评论时间位置:输入到用户浏览器(前台及后台)图4-9评论信息数据字典4.2.2数据库逻辑结构设计本系统使用的是MySQL数据库。MySQL数据库使用起来非常的方便简单,并且数据存储量也比较大,具有很好的再造和重写特性,这有利于我们管理和维护数据,所以普遍认为它是比较适合于中小型网站开发的数据库【10】。管理员用户表主要储存管理员用户信息,在登录时,系统会访问管理员用户表确定登录的用户名和密码是否正确。而密码字段需要使用加密手段来保证密码的安全性。管理员用户表的设计如表4-1:基于java的个人博客系统-毕业设计全文共29页,当前为第16页。基于java的个人博客系统-毕业设计全文共29页,当前为第16页。表4-1管理员用户表字段名类型允许为空键附加User_idBigint(20)NoPrimaryKeyAuto_incrementUser_nameVarchar(64)YesUser_emailVarchar(64)YesUser_qqVarchar(16)YesPasswordVarchar(32)YesUser_statusInt(12)Yes文章信息表主要存储的是文章的ID,文章名,文章内容等。文章信息表的设计如表4-2所示:表4-2文章信息表字段名类型允许为空键附加Post_idBigint(20)NoPrimaryKeyAuto_incrementAuthor_idBigint(20)YesPost_dateDatetimeYesPost_contentLongtextYesPost_titleTextYesComment_statusInt(8)YesCategory_idBigint(20)YesPost_modified_dateDatetimeYesComment_countInt(128)YesPost_statusInt(8)Yes评论信息表主要存储评论的ID,内容,所评论的文章已经评论时间等信息。评论信息表的设计如表4-2所示:表4-3评论信息表字段名类型允许为空键附加Comment_idBigint(20)NoPrimarykeyAuto_incrementPost_idBigint(20)YesComment_authorTinytextYesComment_author_emailVarchar(100)YesComment_dateDatetimeYesComment_contentTextYesComment_parentBigint(20)YesUser_idBigint(20)Yes基于java的个人博客系统-毕业设计全文共29页,当前为第17页。类别信息表主要存储类别的名称和ID,类别信息表的设计如表4-2所示:基于java的个人博客系统-毕业设计全文共29页,当前为第17页。表4-4类别信息表字段名类型允许为空键附加Cat_idBigint(20)NoPrimaryKeyAuto_incrementCat_nameVarchar(64)YesCat_descriptionLongtextYesCat_parentBigint(20)Yes4.3系统实现4.3.1首页界面本系统首页界面设计有文章列表、文章分类,设计简洁、美观、大方,具体系统首页如图4-10所示:图4-10系统首页实现首页功能界面的核心代码如下:<html><head><title>凛様で</title><!--BootstrapcoreCSS--><linkhref="/resources/css/bootstrap.min.css"rel="stylesheet"><linkhref="/resources/css/blog.css"rel="stylesheet"></head><body><navclass="navbarnavbar-inversenavbar-fixed-top"role="navigation"><divclass="container"><divclass="navbar-header">基于java的个人博客系统-毕业设计全文共29页,当前为第18页。<buttontype="button"class="navbar-toggle"data-toggle="collapse"data-target=".navbar-ex1-collapse">基于java的个人博客系统-毕业设计全文共29页,当前为第18页。<spanclass="sr-only">Togglenavigation</span><spanclass="icon-bar"></span><spanclass="icon-bar"></span><spanclass="icon-bar"></span></button><aclass="navbar-brand"href="">凛様で</a></div><!--Collectthenavlinks,forms,andothercontentfortoggling--><divclass="collapsenavbar-collapsenavbar-ex1-collapse"><ulclass="navnavbar-nav"><li><ahref="#about"class="header-about">关于我</a></li><li><ahref="#contact"class="header-contact">联系方式</a></li></ul><ulclass="navnavbar-navnavbar-right"><li><aclass="header-user-name"href="#"></a></li><li><ahref="#"class="header-settings"><spanclass="glyphiconglyphicon-cog"></span>Settings</a></li></ul></div><!--/.navbar-collapse--></div><!--/.container--></nav><!--/.container--><divclass="progressprogress-stripedactive"><divclass="progress-bar"role="progressbar"aria-valuenow="5"aria-valuemax="100"aria-valuemin="0"style="width:5%;"></div></div><divclass="containerblog-container-wrap"><divclass="row"><divclass="col-lg-8blog-container-wrap-content"><!--blog-->基于java的个人博客系统-毕业设计全文共29页,当前为第19页。</div>基于java的个人博客系统-毕业设计全文共29页,当前为第19页。<divclass="col-lg-4"><html><head><title></title></head><body><divclass="wellblog-menu-about-me"><h4><spanclass="glyphiconglyphicon-home"></span> 欢迎访问凛的博客</h4>如果喜欢的话请常来转转,博文不定期更新。<!--/input-group--></div><!--/well--><divclass="wellblog-menu-category"><h4><spanclass="glyphiconglyphicon-tags"></span> 类别</h4><divclass="row"><divclass="col-lg-6"><ulclass="list-unstyledblog-menu-category-left"></ul></div><divclass="col-lg-6"><ulclass="list-unstyledblog-menu-category-right"></ul></div></div></div><!--/well--><divclass="well"><h4><spanclass="glyphiconglyphicon-info-sign"></span> 可以看看大神们的博客</h4><p><ahref=""target="_blank">小涵</a></p></div><!--/well--></div></body></html></div></div></div><html><head><title></title></head><body><footerclass="footernavbar-fixed-bottom"><divclass="row"><divclass="col-lg-12"><p>Copyright©Company2015</p></div>基于java的个人博客系统-毕业设计全文共29页,当前为第20页。</div>基于java的个人博客系统-毕业设计全文共29页,当前为第20页。</footer></body></html><!--JavaScript--><scriptsrc="/resources/js/lib/jquery-1.10.2.js"></script><scriptsrc="/resources/js/lib/bootstrap.js"></script><scriptsrc="/resources/js/lib/json.min.js"></script><scriptsrc="/resources/js/blog.js"></script></body></html>这段代码使用了HTML/CSS创建了一个首页界面,并用AJAX从后台读取数据显示在页面中。同时这些代码的功能创建了五个模块,分别为文章显示、分类显示、关于我、联系方式和登录。并且做相关链接,也就是建立最基本的界面和按钮。4.3.2登录界面登录界面提供为管理员登录的入口。登录后,可以查看文章、分类、评论信息,并且可以对部分信息进行操作。具体登录界面如图4-11所示:图4-11登录界面实现在线订桌界面的核心代码如下:<!DOCTYPEhtml><html><head><metacharset="utf-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge">基于java的个人博客系统-毕业设计全文共29页,当前为第21页。基于java的个人博客系统-毕业设计全文共29页,当前为第21页。<metaname="description"content=""><metaname="author"content=""><title>登陆</title><!--BootstrapcoreCSS--><linkhref="/resources/css/bootstrap.min.css"rel="stylesheet"><!--BootstrapValidatorCSS--><linkrel="stylesheet"href="/resources/css/bootstrapValidator.css"/><!--Customstylesforthistemplate--><linkhref="/resources/css/signin.css"rel="stylesheet"></head><body><divclass="container"><formid="form-signin"method="post"><h2class="form-signin-heading">请登录</h2><divclass="form-group"><inputname="name"type="text"class="form-controlform-signin-name"placeholder="用户名"autofocus></div><divclass="form-group"><inputname="password"type="password"class="form-controlform-signin-password"placeholder="密码"></div><divclass="alertalert-dangeradmin-login-alert"><strongclass="admin-login-alert-msg"></strong></div><labelclass="checkbox"><inputtype="checkbox"value="remember-me">记住我</label><buttonclass="btnbtn-lgbtn-primarybtn-block"id="sign-in-btn">确定</button></form></div><!--/container--><!--BootstrapcoreJavaScript<!--Placedattheendofthedocumentsothepagesloadfaster-->基于java的个人博客系统-毕业设计全文共29页,当前为第22页。<scriptsrc="/resources/js/lib/jquery-1.10.2.js"></script>基于java的个人博客系统-毕业设计全文共29页,当前为第22页。<scriptsrc="/resources/js/lib/bootstrap.js"></script><scriptsrc="/resources/js/lib/json.min.js"></script><scriptsrc="/resources/js/lib/bootstrapValidator.js"></script><scriptsrc="/resources/js/login.js"></script></body></html>以上这段代码首先用HTML/CSS创建了登录界面,用BootstrapValidate作为这个界面表单的数据验证工具【11】。4.3.3后台界面后台界面包括了增加文章、修改文章、分类管理、评论管理以及用户资料管理功能。。具体系统更多界面如图4-12所示:图4-12后台界面实现首页功能界面的核心代码如下:<!DOCTYPEhtml><htmllang="en"><head><metacharset="utf-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><metaname="description"content=""><metaname="author"content=""><title>凛様で</title><!--BootstrapcoreCSS-->基于java的个人博客系统-毕业设计全文共29页,当前为第23页。<linkhref="/resources/css/bootstrap.min.css"rel="stylesheet">基于java的个人博客系统-毕业设计全文共29页,当前为第23页。<link rel="stylesheet" type="text/css"href="/resources/css/bootstrap-wysihtml5.css"/><!--AddcustomCSShere--><linkhref="/resources/css/admin.css"rel="stylesheet"></head><body><divclass="admin-container"><navclass="navbarnavbar-inversenavbar-fixed-top"role="navigation"><divclass="container"><divclass="navbar-header"><buttontype="button"class="navbar-toggle"data-toggle="collapse"data-target=".navbar-ex1-collapse"><spanclass="sr-only">Togglenavigation</span><spanclass="icon-bar"></span><spanclass="icon-bar"></span><spanclass="icon-bar"></span></button><aclass="navbar-brand"href="">凛様で</a></div><!--Collectthenavlinks,forms,andothercontentfortoggling--><divclass="collapsenavbar-collapsenavbar-ex1-collapse"><ulclass="navnavbar-nav"><li><ahref="#about"class="header-about">关于我</a></li><li><ahref="#contact"class="header-contact">联系方式</a></li></ul><ulclass="navnavbar-navnavbar-right"><li><aclass="header-user-name"href="#"><spanclass="glyphiconglyphicon-user"></span>凛</a></li><li><ahref="#"class="header-settings"><spanclass="glyphiconglyphicon-cog"></span>Settings</a></li><!--<li><ahref="#"class="header-profile">Profile</a></li>--><!--<li><ahref="#"class="header-help">Help</a></li>--></ul></div><!--/.navbar-collapse-->基于java的个人博客系统-毕业设计全文共29页,当前为第24页。</div><!--/.container--></nav>基于java的个人博客系统-毕业设计全文共29页,当前为第24页。<!--/.container--><!--/.container--><divclass="container-fluid"><divclass="row"><divclass="col-sm-3col-md-2sidebar"><divclass="sidebar-offcanvas"id="sidebar"role="navigation"><divclass="list-groupadmin-menu"><ahref="#"class="list-group-itemmenu-btn-home">Home</a><ahref="#"class="list-group-itemmenu-btn-new">NewPost</a><ahref="#"class="list-group-itemmenu-btn-posts">Posts</a><ahref="#"class="list-group-itemmenu-btn-categories">Categories</a><ahref="#"class="list-group-itemmenu-btn-comments">Comments</a><ahref="#"class="list-group-itemmenu-btn-profile">Profile</a></div></div><!--/span--></div><divclass="col-sm-9col-sm-offset-3col-md-10col-md-offset-2main"><divclass="admin-container-inner-wrap"></div></div></div></div></div><!--JavaScript--><scriptsrc="/resources/js/lib/jquery-1.10.2.js"></script><scriptsrc="/resources/js/lib/bootstrap.js"></script><scriptsrc="/resources/js/lib/json.min.js"></script><scriptsrc="/resources/js/lib/wysihtml5-0.3.0.js"></script><scriptsrc="/resources/js/lib/bootstrap3-wysihtml5.js"></script><scriptsrc="/resources/js/admin.js"></script></body></html>这段代码用Bootstrap菜单创立目录模块,用JavaScript控制页面跳转,通过Ajax可以将页面数据提交给后台服务器处理,服务器在处理完成后会返回提示信息显示在页面基于java的个人博客系统-毕业设计全文共29页,当前为第25页。中【12】。基于java的个人博客系统-毕业设计全文共29页,当前为第25页。第5章系统部署与测试本系统部署环境为:Tomcat7.0,Java7,Linux,MySQL5。开发环境为:eclipseforJavaEE。测试是为了发现程序中的错误而执行程序的过程。测试任何产品都有两种方法:黑盒测试与白盒测试。白盒测试(white-boxtesting)又称透明盒测试(glassboxtesting)、结构测试(structural
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年芜湖市劳动保障人力资源有限公司招聘10人(十二)笔试参考题库附带答案详解
- 第16课《驱遣我们的想象》教学设计 2024-2025学年统编版语文九年级下册
- 2024年开封国顺投资发展有限公司招聘笔试参考题库附带答案详解
- 河北省保定市高阳县2023-2024学年七年级下学期期末语文试题
- 2025年湖南电子科技职业学院单招职业倾向性测试题库学生专用
- 2025年湖南水利水电职业技术学院单招职业倾向性测试题库及答案一套
- 护理学研究习题库(附答案)
- 人工智能题库含参考答案
- 2 我是什么(教学设计)-2024-2025学年统编版语文二年级上册
- 2024四川雅安市雅茶集团茶业有限公司第一期招聘拟聘用人员笔试参考题库附带答案详解
- 悟哪吒精神做英雄少年开学第一课主题班会课件-
- 2025年2级注册计量师专业实务真题附答案
- 2025年春季学期教导处工作计划及安排表
- 果实品质评价体系建立与应用-深度研究
- 2024年江苏省中小学生金钥匙科技竞赛(高中组)考试题库(含答案)
- 智能制造技术在工业设计中的应用
- 人教版小学六年级下册音乐教案全册
- 12J201平屋面建筑构造图集(完整版)
- 2024年个人信用报告(个人简版)样本(带水印-可编辑)
- 16J914-1 公用建筑卫生间
- 20CS03-1一体化预制泵站选用与安装一
评论
0/150
提交评论