目录
一.研究目的
第一批中文博客是在2002年出现的,早些时候博客只是一个新的网络名词并无特殊之处,。就在不经意间,博客竟如雨后春笋般冒出来,博得越来越多网民的欢心,并在互联网上引发了一股博客热潮。博客的发展现状呈现出以下特点:发展速度惊人;从精英向大众人群迅猛扩展;博客人群主体更加多元化;博客服务商激增,出现群雄争霸局面;博客资源争夺激烈,博客服务商面临市场洗牌。博客发展到今天已经取得了相当规模的成就,以新浪、搜狐、网易为代表的三大门户网站都已经推出了自己的博客服务,还有一些著名的专业博客网站都已经对博客资源展开了激烈的争夺。在规模扩大的同时博客技术也在不断的进步和完善,目前博客技术已经取得的成果包括:发表日志,发表评论,相册等一些通用功能。
但是现在的博客技术还不够完善,要想永久确立它的网络地位必须不断开发并推出新的博客技术来满足人们的需要。本课题的研究正是基于这样一种追求博客新技术的基础上而展开的。
二.系统功能分析
序号 | 功能模块类别 | 功能模块 | 备注 |
1 | 前台模块 | 阅读日志功能块 | |
博客列表功能块 | |||
注册功能块 | |||
登陆功能块 | |||
公共模块 | |||
2 | 博客管理模块 | 用户模板管理功能块 | |
博客管理功能快 | |||
3 | 系统管理模块 | 用户管理功能块 | |
系统模板管理功能块 | |||
公告管理功能块 | |||
系统参数设置功能块 | |||
数据库管理功能块 |
前台功能列表
序号 | 功能列表 | 功能明细 |
1 | 首页 | 最新日志列表 |
热门日志列表 | ||
日志分类列表 | ||
2 | 阅读日志功能块 | 全部日志列表 |
日志内容页 | ||
日志评论功能(发表评论) | ||
3 | 博客列表功能块 | 全部博客列表 |
博客内容页 | ||
4 | 注册功能块 | 用户注册页 |
5 | 登陆功能块 | 验证用户权限 |
6 | 公共模块 | 日志和博客关键字搜索 |
列出博客、日志、评论的总数 | ||
博客排行榜 |
博客管理功能列表
序号 | 功能列表 | 功能明细 |
1 | 写博客 | 写日志,管理日志 |
管理评论 | ||
专题分类管理 | ||
修改公告 | ||
修改个人博客信息 | ||
2 | 模板管理 | 添加、删除和修改用户模板 |
系统管理功能列表
1 | 系统模板管理 | 添加、删除和修改系统模板 |
2 | 管理用户 | 修改用户信息和密码 |
添加和删除用户 | ||
3 | 系统参数设置 | 设置系统的一些名称和数据 |
4 | 数据库管理 | 数据库的备份和还原 |
系统管理员,参与了管理博客账号、登陆、修改密码3个用例。
博客使用者,参与了登陆、修改密码、管理文章、管理连接、管理图片5个用例。
博客访问者,参与了阅读博客、发表评论2个用例。
博客系统参与者
用例图是系统的高层试图,仅仅是用例图还不能支撑项目组进行设计工作,对于每一个用例,都需要确定用户如何使用这个系统,我们以用户的角度进行事件流设计,描述用例提供的价值和工作流程。我们按照主流博客网的模板进行设计。
◆名称:表明用户的意图或用例的用途。
◆标识符:惟一表识,如UC1234,在项目的其他元素中可以用来引用这个用例。
◆描述:概述用例的几句话。
◆参与者:与此用例相关的参与者列表。
◆状态:指示用例的状态。
◆频率:参与者访问次用例的频率。
◆前置条件:一个条件列表,如果其中包含条件。则这些条件必须在访问用例之前得到满足。
◆后置条件:一个条件列表,如果其中包含条件。则这些条件必须在用例成功完成以后得到满足。
◆被扩展的用例:此用例所扩展的用例。
◆被包含的用例:此用例所包含用例的列表。
◆假设:对编写此用例时所创建的域的任何重要假设。
◆基本操作流程:参与者在用例中所遵循的主逻辑路径。
◆可选操作流程:用例中很少用到的逻辑路径,那些在变更工作方式、出现异常或发生错误的情况下所遵循的路径。
◆修改历史记录:关于用例的修改时间、原因和修改人的详细信息。
◆问题:如果存在,则为与此用例的开发相关的问题或操作项目的列表。
◆决策:关键决策的列表,这些决策通常由你的SME做出,并属于用例的内容。
用户登陆用例
用例名称 | 用户登陆 | |
用例ID | UC-12 | |
参与者 | 用户、管理员 | |
描述 | 用户登陆系统过程 | |
风险 | 低 | |
优先级 | 高 | |
难度 | 低 | |
启动 | 主动进入用户登陆画面或会话超时转入用户登陆画面 | |
前置条件 | 用户需在登陆状态 | |
后置条件 | 将用户信息放入会话中 | |
将用户相关的博客信息放入会话中 | ||
显示博客阅读主画面 | ||
主事件流 | ||
用户 | 系统 | |
1.进入或转入用户登陆画面 | ||
2.用户输入用户名和密码 | 3.系统检查用户名和密码是否合法 | |
4.系统检查用户名是否存在,密码是否正确 | ||
5.读取用户的基本信息、博客的基本信息放入会话中 | ||
6.转到管理博客的主画面 | ||
异常流 | ||
异常流 | 系统中不存在该用户或用户名错误 | |
系统 | 转入登陆画面 | |
异常 | 用户不存在或密码错误 |
修改密码用例
用例名称 | 修改密码 | |
用例ID | UC-15 | |
参与者 | 用户、管理员 | |
描述 | 用户、管理员进行密码修改 | |
风险 | 低 | |
优先级 | 高 | |
难度 | 低 | |
启动 | 单击“用户修改密码” | |
主事件流 | ||
用户 | 系统 | |
1.进入用户修改密码,输入旧密码一次,新密码两次 | 2.检查密码格式是否相符 | |
3.检查旧密码是否正确 | ||
4.如果正确就进行密码修改,转入密码修改成功画面 | ||
异常流 | ||
异常流 | 密码检查不通过 | |
系统 | 返回密码修改画面,提示旧密码不正确、新密码格式不符、两次不同等 | |
异常 | 用户旧密码错误 | |
规则 | 密码需要大于6位小于12位 |
管理博客账号用例
用例名称 | 管理博客账号 | |
用例ID | UC-25 | |
参与者 | 管理员 | |
描述 | 管理员进行博客账号管理 | |
主事件流 | ||
用户 | 系统 | |
1.单击博客账号管理图标 | 2.显示博客账号管理主画面,包括博客账号的列表及删除按钮 | |
可选事件流 | ||
删除博客账号 | ||
用户 | 系统 | |
1.单击[删除]按钮 | 2.提示确认删除 | |
3.单击[确认]删除 | 4.系统删除博客账号的信息,提示删除成功 |
修改博客账号用例
用例名称 | 修改博客信息 | ||
用例ID | UC-28 | ||
参与者 | 博客使用者 | ||
描述 | 修改博客账号信息 | ||
风险 | 低 | ||
优先级 | 高 | ||
难度 | 低 | ||
启动 | 进入修改博客画面 | ||
前置条件 | 博客使用者已登陆 | ||
后置条件 | 更新Session中的博客信息 | ||
主事件流 | |||
用户 | 系统 | ||
1.单击修改博客信息链接 | 2.系统显示修改博客画面,初始化该博客相关信息 | ||
3.修改博客的相关信息,单击【保存】 | 4.检查同名的博客是否存在、检查博客的名称、描述是否包含特殊字符 | ||
5.保存博客的相关信息、提示保存成功 | |||
异常流 | |||
异常流 | 同名博客账号存在 | ||
系统 | 提示已有同名博客存在,提示用户重新输入博客的名称 | ||
系统 | 提示输入的信息不合法,提示用户重新输入博客的名称、描述 | ||
规则 | 博客名称不能包含特殊字符 | ||
博客的名称不能重复 |
三.数据库设计
数据库设计是项目开发中的系统设计中非常重要的另一个关键环节,在这里之所以特别强调数据库设计的重要性,上因为数据库设计就像在建设高楼大厦的根基一样,如果设计不好,在后来的系统维护、变更和功能扩充时,甚至在系统开发过程中,将会引起比较大的问题,会遇到非常大的困难,大量的工作将会重新进行。
下面根据前面列出的系统用例图,开始设计相关数据库。
(1) 数据库表及表之间的相互关系
本系统需要设计的数据库表如下
数据库表
序 号 | 数据库表 | 数据库表存储内容 |
1 | user | 存储用户信息、权限及用户的博客信息 |
2 | classname | 存储分类信息 |
3 | blog | 存储日志信息 |
4 | sysskin | 存储系统模板信息 |
5 | comment | 存储评论信息 |
6 | userskin | 存储用户模板信息 |
7 | admin | 存储系统管理员信息 |
上表列出了本系统所用到的数据表,并根据流程和功能表示出数据各表之间的关系,具体如下。
数据库表结构的详细设计
下面开始对上一节列出的数据表逐一做出详细说明。
存储用户信息、权限及用户的博客信息的表如下。
博客用户信息表Blog
序号 | 字段名 | 字段类型 | 说明 | 备注 |
1 | BlogID | int | 博客编号 | 键 |
2 | Subject | Varchar | 主题 | |
3 | Username | Varchar | 用户登陆名 | 惟一 |
4 | Password | Varchar | 用户密码 | |
5 | Description | Varchar | 描述 | |
6 | | Varchar | 用户电子邮件 | |
7 | EntryNum | Varchar | 被访问次数 | |
8 | Name | Varchar | 博客名 | |
9 | Role | Varchar | 角色级别 | 0=系统管理员 1=普通用户 |
10 | EssayCount | int | 随笔数 | |
11 | ArticleCount | int | 文章篇数 | |
12 | FeedCount | Int | 评论数 |
栏目分类表 classname
序号 | 字段名 | 字段类型 | 说明 | 备注 |
1 | ID | Int | 编号 | 键 |
2 | name | Varchar | 栏目名 | |
3 | blogID | int | 博客编号 | |
4 | type | Varchar | 类型 | |
5 | description | Varchar | 描述 |
日志信息表 Blog
序号 | 字段名 | 字段类型 | 说明 | 备注 |
1 | ID | Int | 编号 | 键 |
2 | subject | Varchar | 主题 | |
3 | content | Varchar | 内容 | |
4 | classID | Int | 所属分类号 | |
5 | blogID | Int | 博客编号 | |
6 | uptime | Datetime | 更新时间 | |
7 | view | Varchar | 被访问次数 | |
8 | comment | Varchar | 评论数 |
模板信息表 Skin
序号 | 字段名 | 字段类型 | 说明 | 备注 |
1 | ID | Int | 模板编号 | 键 |
2 | skinname | Varchar | 主题 | |
3 | skinmian | Varchar | 样式 | |
4 | auther | Varchar | 提供者 | |
5 | isdefault | Int | 是否是默认模板 | |
6 | time | Datetime | 更新时间 |
评论信息表 Comment
序号 | 字段名 | 字段类型 | 说明 | 备注 |
1 | feedBackID | Int | 评论编号 | 键 |
2 | subject | Varchar | 主题 | |
3 | content | Varchar | 内容 | |
4 | blogID | Int | 博客编号 | |
5 | categoryID | Int | 分类号 | |
6 | contentID | Int | 排序号 | |
7 | category | Varchar | 所属分类 | |
8 | time | Datetime | 更新时间 | |
9 | username | Varchar | 评论人名 | |
10 | url | Varchar | 路径 |
系统管理员信息表 admin
序号 | 字段名 | 字段类型 | 说明 | 备注 |
1 | ID | Int | 编号 | 键 |
2 | usename | Varchar | 用户名 | |
3 | passward | Varchar | 路径 | |
4 | lastloginip | Int | 最后登陆的IP | |
5 | lastlogintime | Int | 最后登陆时间 |
四.系统页面展示
在页面的“会员登录”版面上,注册用户输入正确的用户名和密码后,即可进入用户权限操作。点击“注册”按钮即可进行新会员的注册,之后的每一步操作都有相应的提示。登陆成功后,“会员登录”版面会变为如下图
点击主页面右上角的“管理登录”超链接即可进入管理员登录子模块。此时出现如下图所示的登陆页面
系统管理员登录时,还必须填写系统产生的验证码,登录成功后即进入博客系统管理模块,在该模块中管理员可添加、修改、删除系统的各种设置。管理主页面如下图所示
博客用户通过首页几可以进入自己的博客管理界面如下图
该模块设置在系统首页,用户只要在下图所示的搜索栏中输入所要查找的博客信息(如日志标题、日志内容、博客名称)后点击搜索按钮,就可进行查询。系统也会以页面形式返回查找的结果
五.免费源码获取方式
本系统只展示部分功能和代码需要源码可以私信