博客网站系统

一、开发背景

  为了提升自己的独立开发能力,熟悉Spring+Hibernate+SpringMVC整合开发

二、系统分析

  1、需求分析

  对于用户而言,能浏览其他用户发表的文章,并且这项操作是不需要登录的;用户注册并登录后可以发表自己的信息。

  2、功能分析

  该博客网站的功能主要是为博客用户开发设计的,用户进入博客网站后,主要有三种选择:注册新用户、登录和浏览博客。通过注册和登录用户可以获取自己的博客空间,如果不进行这些操作,用户也可以浏览用户的内容。

  进入自己的博客后,用户能够完成如下功能:

  ●  对自己的博客进行个性化设计

  ●  发表日志

  ●  上传图片和对图片进行浏览

  在博客首页中,是不区分用户是否登录的,用户能够完成以下功能:

  ●  浏览博客网站的所有文章

  ●  浏览某一博客用户发表的所有文章

  ●  浏览某一博客用户上传的图片

  ●  对文章进行评论

  ●  查看文章的点击率

  ●  浏览某一博客用户查看文章的评论量

三、系统设计

  1、绘制用例图设计系统功能

  博客系统中一共包含两种权限的用户角色,分别是游客和用户。

  游客可以查看博客文章的内容、访问其他用户博客、浏览用户图片、发表评论和查看文章相关信息等功能。

  用户除了能够完成游客的功能外,还能够完成对自己博客进行操作的功能,包括进行个性化设置、发表文章、上传图片等功能。

   2、绘制系统流程图

  本系统首先要对用户进行身份验证,验证时判断用户是已注册还是普通游客。如果是已注册用户,则跳转到用户个人博客页面;如果是游客,则跳转到博客网站首页。

  3、系统演示

  4、开发工具和开发技术的选择

  本系统的开发工具具体如下:

  系统开发平台:idea2017.3

  数据库系统管理软件:MySQL 5.7

  运行平台:Windows

  Java开发包:JDK1.7

  Web服务器:tomcat 7.0

  本系统更采用Spring+MyBatis+SpringMVC三层架构模式开发,具体架构如下:

  显示层:使用SpringMVC技术开发

  控制层:使用Spring技术进行业务处理

  数据访问层:使用MyBatis进行数据库访问和操作

  5、文件夹组织架构

四、数据库分析和设计

  1、数据库分析

  在博客系统中,用户需要通过注册和登录才能拥有自己的博客,所以在数据库中要创建用户表(user)。用户进入博客系统后,首先要进行个性化设置,从而要有保存个性化设置的信息表(blog_info)

  用户发表博客文章,所以要在数据库中创建文章表(article),从而保存所有用户发表的文章。用户可以对别人的文章进行评论,所以同样需要具有保存评论的数据表(critique)。博客文章还有一个非常重要的信息,那就是点击量,所以也要有一个保存点击量的数据表(click_rate)

  2、数据库概念设计

  本系统一共设计规划处5个实体,分别是用户实体文章实体个性化设置实体评论实体点击量实体。

  用户实体用来保存用户的所有信息,包括用户名、密码、昵称、密码保护问题以及密码保护答案信息。

  个性设置实体用来保存博客个性化信息,包括用户名、博客标题以及个性签名信息。

  文章实体用来保存文章的基本信息,包括文章编号、文章标题、文章内容、发表用户名、发表时间以及评论数。

  评论实体用来保存评论的基本信息,包括评论编号、所属文章编号、评论内容以及评论用户名。

  点击量实体用来保存点击文章的基本信息,包括点击量编号、文章编号、点击者IP地址以及点击时间。

  3、数据库逻辑结构设计

  ①用户表用来存储博客系统中建立自己博客,并进行博客操作的用户,包括用户名、密码、昵称、密码保护问题和密码保护回答字段。

  ②个性设置表用来存储用户对个人博客进行个性设置的基本信息,包括用户名、博客标题和个性签名

  ③文章表用来存储博客系统中博客文章的基本信息,包括文章ID、文章标题、文章内容、发表用户名、发表时间和评论数

  ④评论表用来存储博客系统中所有评论的基本信息,包括评论ID、评论文章、评论内容和评论用户。

  ⑤点击量表用来存储博客系统中点击文章的基本信息、包括ID、文章ID、点击者IP和点击时间

  4、绘制表之间关系E-R图

posted @ 2018-01-08 18:38  小蘇  阅读(336)  评论(0编辑  收藏  举报