博客管理系统_第1页
博客管理系统_第2页
博客管理系统_第3页
博客管理系统_第4页
博客管理系统_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、博客管理系统摘要博客(Blog)是目前Internet上最流行、最时尚的应用,其英文全称为WebBlog,原意为网络日志,是一种十分简易的“傻瓜”式个人信息发布方式。它代表着网络是时代的个人“读者文摘”,是以超链接为介质的网络日记。更简明的定义,就是一种简便的网站内容管理系统(CMS),其内容有时效性,并且一般进行分类,可通过评论等形式实现作者与读者的交流,同时提供符合标准的内容摘要。Blog作为一种新的生活方式、新的工作方式和新的学习方式已经被越来越多的人所接受,并且正在改变着传统的网络和社会结构。网络信息不再是虚假不可验证的;交流和沟通更有明确的选择和方向性;单一的思想和群体的智慧结合变得

2、更加有效;个人出版变成人人都可以实现的梦想。Blog正在影响和改变着我们的生活。本次实训将实现一个具有简单发布和管理功能的Blog平台。本博客管理系统包括前台用户注册、用户登录、阅读文章、发表评论、发表留言等功能模块,以及后台文章管理、评论管理等功能模块,并构建了一个博客管理系统的基本体系结构。本系统采用myeclipse进行编程开发,配合使用微软数据库系统mysql数据库来存储网站中用到的数据信息。关键词:博客管理系统,myeclipse,mysql数据库一、概论课题开发背景博客的个性化和平民视角使得它提供的信息更贴近人们的生活,所以很多人都想建立自己的网站空间。博客可以说是一种网络虚拟社区

3、,在这里用户可以通过网络日志的形成方便、快捷地发表自己的心得体会。课题开发意义博客是一个自由的发布平台,每个人自由的在互联网上通过个人博客发表自己的心声,本网站包含有关文章信息,可以供用户阅读,网站中还设计留言板,方便用户进行留言交流学习和工作的健康心得和经验。本网站还开发有文章管理共同成长,从而进一步提升自己。二、系统需求分析:1、系统需求分析 任何一个软件项目的开发都是从需求调查开始,博客管理系统也不例外。系统管理员通过前台页面进入后台管理模块后,可对注册的博客用户进行管理,包括对注册,用户的添加、查找、修改等操作,而博客用户通过前台登陆后,可对自己的博客空间进行管理,包括发布自己的网络日

4、志、收藏个人图片、与相关人员进行交流和沟通以及删除访问者发表的评论等。针对博客管理系统的一些需求,总结出如下信息。博客管理员涉及对文章管理、图片管理、评论管理、留言管理。普通用户可以阅读文章、发表回应、留言和评论。2、系统可行性分析 可行性分析(FeasibilityAnalysis)也称为可行性研究,是在系统调查的基础上,针对新网站的开发是否具备必要性和可能性,对新网站的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新网站的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。为了确定开发具有可行性,对本系统主要进行了以下三个方面的分析。 (1)

5、经济可行性 经济可行性主要包括支出、效益和投资回收周期。关于支出,一方面要完全利用现有的设备,看是否需要增加新的硬件设备。另一方面需要经常性的软件维护费用。关于效益,目前的情况还不能具体确定,只能根据后期的点击率和使用效率来确定。关于投资回收周期,估计是系统运行后的一年。 (2)技术可行性 技术可行性分析主要是分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。在软件方面,本系统采用的是进行开发,前台网页设计使用的是MicrosoftVisualStudio2008,而数据库系统采用的是SQL2005。通过分析,在软、硬件方面现有工具与环境完全可以实现系统的开发,因此具有技术上的

6、可行性。 (3)社会可行性社会因素可行性主要包括法律方面的可行性和使用方面的可行性。法律方面的可行性指系统的研发和开发所涉及到的软件都选用正版,不会侵犯他人、集体和国家的利益,遵循相关的法律规定;使用方面的可行性指使用本软件的人员只需要要求有一定的上网基础,能做到一个合格的博客就行。三、系统设计目标和原则1、系统目标本系统属于小型的Web版数据库系统,有效地创建了一个网络虚拟社区,使用户可以及时有效并轻松地与他人交流。通过此网站可以达到以下目标:界面简洁,框架清晰、美观大方。用户通过网络日志的形式迅速、便捷地发布自己的心得体会。为充分展现网络读者与作者的交互性,采用动态网页技术实现博客信息在线

7、发布。信息查询灵活、方便,数据存储安全、可靠。实现后台管理中的各种查询,如定位查询、模糊查询等。对用户输入的数据,系统进行严格的数据检验,尽可能排除人为地错误。网站最大限度地实现易维护性和易操作性2、SSH框架:SSH不是一个框架,而是多个框架的集成,是目前比较流行的一种Web应用程序集成框架,用于构建灵活、易于扩展的多层Web应用程序。Struts作为系统的整体基础架构,负责MVC的分离,在struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持。Spring一方面最为一个轻量级的loc容器,负责查找、定位、创建和管理对象及对象间的依赖关系,另一方面能够使Stru

8、ts和Hibernate更好的工作。由SSH构建系统的基本业务流程是:a、在表示层中,首先通过JSP页面实现交互界面,负责传送请求(Request)和接收响应(Response),然后Struts根据配置文件(struts-config.xml)将ActionServlet接收到的Request委派给相应的Action处理。b、在业务层中,管理服务组件的Spring IoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。c、在持久层中,则依赖于Hibernate的对象化映

9、射和数据库交互,处理DAO组件请求的数据,并返回处理结果。采用上述开发模型,不仅实现了视图、控制器与模型的彻底分离,而且还实现了业务逻辑层与持久层的分离。这样无论前端如何变化,模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可复用性。而且由于不同层之间耦合度小,有利于团队成员并行工作,大大提高了开发效率。3、MySql数据库MySql是一种开放源代码的关系型数据库管理系统,MySql数据库系统使用最常用的数据库管理语言-结构化查询语言(SQL)进行数据库管理。 由于MySql是开放源代码的,因此任何人都可以在General Public License的许可下下载并

10、根据个性化的需要对其进行修改。MySql因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySql是管理内容最好的选择。 MySql关系型数据库于1998年1月发行第一个版本。它使用系统核心提供的多线程机制提供完全的多线程运行模式,提供了面向C、C+、 Eiffel、Java、Perl、PHP、Python以及Tcl等编程语言的编程接口(APIs),支持多种字段类型并且提供了完整的操作符支持查询中的SELECT和WHERE操作。4、系统流程图 在博客管理网站用户可以使用前台系统浏览所有网站内容,可以在网站内阅读文章,发表评论,发表留言。管理员登录到后台后,可以执

11、行内部数据操作,可以增加、删除系统用户信息,可以增加、删除、更新版块内容。在这里主要介绍的是登录博客管理系统网站后,系统整体用例图,注册网民管理注册用户文章管理中心登录会员登录发表评论博客访客查看文章匿名访问注册访问访客评论管理留言管理注册用户查看文章、系统管理中心登录3、系统管理员5、系统开发环境(1)网站开发环境 网站开发环境:MyEclipse10集成开发环境 网站开发语言:java网站后台数据库:MySql开发环境运行平台:Windows7(2)服务器端 Web服务器:Tomcat数据库服务器:MySQl浏览器:FireFox (3)客户端浏览器:火狐四、系统功能设计:1系统功能结构博

12、客管理系统网站功能结构如图所示客户端图片管理留言管理连接管理评论管理文章管理发表留言发表评论阅读文章博客主页注册匿名博客访问者五、数据库设计hasreadIdusernameBlogtitleAId评论用户usernamee点击量usernamecontentdatetitle文章信息类型ipcontentIdusernameIdAIdtimeanswernicknamepasswordquestionidiograph个性化设置六、系统详细设计 详细设计主要包括组员在博客管理系统中所负责的各个板块,并对重要版块的功能、设计思路、核心代码和实现结果进行详细的描述。网站的详细设计主要包括组员在博

13、客管理系统中所负责的各个板块,并对重要版块的功能、设计思路、核心代码和实现结果进行详细的描述。按照三层架构的设计原理,博客管理系统详细设计信息如下:(一) 显示层:思路:显示层分为首页,用户登录页面,用户注册页面,组成,用户首先进入首页点击用户注册按钮,进入 用户注册界面,进行注册,注册成功之后,可跳转至博客首页,在首页有个性化设置、相册、留言板等功能。具体核心jsp代码如下:1、 首页:(1) 功能描述:在网站首页中实现的功能有浏览文章、留言、评论、注册用户、找回密码、普通管理员登录、超级管理员登录等(2) 设计思路:此页面的控件主要有标签、文本框、按钮等,对各控件的属性进行设置,从而实现界

14、面友好,功能齐全。(3) 具体代码实现如下:全部文章  全部文章订阅 a href=user/showArticle.action?username=&id= 发表于:|评论()|点击()|作者: 首页上一页首页上一页下一页href=showAllArticle.action?currentPage=$page.totalPage 尾页下一页尾页 北风博客网博客注册。background=image/main/l-bg1.jpg新博客注册帐号 *username密码 *password确认密码 *repassword昵称 *nickn

15、ame密码保护问题 你的生日你的家乡你最喜欢的食物*question密码保护的答案 *answer 3、 登陆页面:(1)功能描述:当注册好的用户输入用户名、密码、验证码与后台数据库的一样时,用户就能进入自己的管理界面,从而实现自己的发表文章、删除文章等功能。(2)设计思路:此页面的控件主要有标签、文本框、按钮等,同时还添加了一些验证控件对输入的信息格式、范围等进行验证,从而保证用户信息的正确性。(3)代码实现如下     博客登录   用户名 密码 4、个人主页:$sessionScope.blogtitle $sessionScope.id

16、iograph 北风博客首页|用户首页|个性化设置|写日志|相册|留言板 北风博客首页|用户首页|个性化设置|写日志|相册|留言板5、显示用户的所有文章我的全部文章  我的全部文章 a href=showArticle.action?id= 发表于:|评论()|点击() 首页上一页首页上一页下一页尾页下一页尾页$sessionScope.username的博客(二) 逻辑层业务逻辑层:注册功能实现:package com.ibeifeng.action;import javax.servlet.http.HttpServletRequest;import org.apach

17、e.struts2.ServletActionContext;import com.ibeifeng.po.User;import com.ibeifeng.service.UserService;importcom.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;publicclassRegisterextends ActionSupportprivateStringusername;privateStringpassword;privateStringrepassword;priv

18、ateStringnickname;privateStringquestion;privateStringanswer;private UserService userService;public UserService getUserService() returnuserService;publicvoid setUserService(UserService userService) this.userService = userService;Get/set 方法略;publicString execute() throws Exception /封装一个user对象User user

19、 = new User();user.setUsername(username);user.setPassword(password);user.setNickname(nickname);user.setQuestion(question);user.setAnswer(answer);/获得requestHttpServletRequest request = ServletActionContext.getRequest();if(userService.registerUser(user) request.setAttribute(url, login.jsp);request.set

20、Attribute(info, 注册成功);returnSUCCESS;else request.setAttribute(url, register.jsp);request.setAttribute(info, 注册失败);returnERROR;登录:package com.ibeifeng.action;import java.util.Map;import javax.servlet.http.HttpServletRequest;import org.apache.struts2.ServletActionContext;import com.ibeifeng.po.User;im

21、port com.ibeifeng.service.UserService;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;publicclassLoginextends ActionSupport /login actionprivate String username;private String password;private UserService userService;public UserService getUserService() retur

22、nuserService;publicvoid setUserService(UserService userService) this.userService = userService;Get/set方法略;public String execute() throws Exception User user = new User();user.setUsername(username);user.setPassword(password);/获得requestHttpServletRequest request = ServletActionContext.getRequest();if(

23、userService.loginUser(user) request.setAttribute(url, user/getBlogInfo.action);request.setAttribute(info, 登陆成功);Map session = ActionContext.getContext().getSession();session.put(username, username);returnSUCCESS; else request.setAttribute(url, login.jsp);request.setAttribute(info, 登陆失败);returnERROR;

24、图片展示,package com.ibeifeng.action;import java.io.File;import java.util.Map;import javax.servlet.http.HttpServletRequest;import org.apache.struts2.ServletActionContext;import com.opensymphony.xwork2.ActionSupport;public classShowPhotoextends ActionSupportpublic String execute() throws Exception /获得usernameMap session = ServletActionContext.getContext().getSession();String username = (String) session.get(username);/设置文件目录String photoPath = ServletActionContext.getServletContext().getRealPath(/user/photo/ + username);/使用File封装File fphotoPath =

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论