博主介绍:java高级开发,从事互联网行业六年,熟悉各种主流语言,精通java、python、爬虫、web开发,已经做了六年的程序开发,开发过上千套大学生实战程序,可以定制、也可成品项目,博客中有上百套程序可供参考,欢迎共同交流学习。
🍅文末点击卡片获取联系🍅
技术:ssm+mysql+jsp+tomcat
目录
1 系统介绍
互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。针对文章和相册分享信息管理混乱,出错率高,信息安全性差,劳动强度大,费时费力等问题,采用个人博客网站可以有效管理,使信息管理能够更加科学和规范。
个人博客网站在Eclipse环境中,使用Java语言进行编码,使用Mysql创建数据表保存本系统产生的数据。系统可以提供信息显示和相应服务,其管理员审核博客文章和相册分享信息,管理文章和相册的分类,用户资料以及留言。用户评论和查看博客文章和相册分享信息,使用留言反馈功能与管理员交流,用户进入用户后台发布博客文章和相册分享信息。
总之,个人博客网站集中管理信息,有着保密性强,效率高,存储空间大,成本低等诸多优点。它可以降低信息管理成本,实现信息管理计算机化。
2 系统背景
2.1 课题背景
互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。所以各行业,尤其是规模较大的企业和学校等都开始借助互联网和软件工具管理信息,传播信息,共享信息等等,以此可以增强自身实力,提高在同行业当中的竞争能力,并从各种激烈的竞争中获取发展的机会。针对文章和相册分享信息管理混乱,出错率高,信息安全性差,劳动强度大,费时费力等问题,经过分析和考虑,在目前的情况下,可以引进一款个人博客网站这样的现代化管理工具,这个工具就是解决上述问题的最好的解决方案。它不仅可以实时完成信息处理,还缩短文章和相册分享信息管理流程,使其系统化和规范化。同时还可以减少工作量,节约文章和相册分享信息管理需要的人力和资金。所以个人博客网站是信息管理环节中不可缺少的工具,它对管理者来说非常重要。
2.2 课题意义
现如今,信息种类变得越来越多,信息的容量也变得越来越大,这就是信息时代的标志。近些年,计算机科学发展得也越来越快,而且软件开发技术也越来越成熟,因此,在生活中的各个领域,只要存在信息管理,几乎都有计算机的影子,可以说很多行业都采用计算机的方式管理信息。信息计算机化处理相比手工操作,有着保密性强,效率高,存储空间大,成本低等诸多优点。针对文章和相册分享信息管理,采用个人博客网站可以有效管理,使信息管理能够更加科学和规范。
总之,在实际中使用个人博客网站,其意义如下:
第一点:个人博客网站的实际运用,可以帮助管理人员在短时间内完成信息处理工作;
第二点:通过系统页面的合理排版布局,可以更加直观的展示系统的内容,并且使用者可以随时阅读页面信息,随时操作系统提供的功能;
第三点:可以实现信息管理计算机化;
第四点:可以降低信息管理成本;
3 系统功能结构
4 数据库结构
本数据库是关系型数据库,因此对二维表的结构设计也比较关键。毕竟二维表格模型就是关系型数据库中的关系模型。而一些常用的关系模型中的概念也需要了解,才可以对关系模型进行设计。下面就简单介绍关系,元组,属性,域,关键字等常用概念的含义。
关系:关系就是数据库中的一张数据表,每张数据表都有命名,也就是每个关系也有名字,那就是数据表名;
元组:元组就是数据表中的一行记录;
属性:属性就是数据表中的字段,也就是数据表中的一列;
域:域就是对数据表中属性的取值进行限定;
关键字:关键字就是数据表中的主键;
在了解了表结构设计的常用概念后,接下来就需要使用前面绘制的E-R模型完成表结构的设计工作,并在数据库中创建数据表,并为各个数据表进行命名。以下就对设计的结果通过表格形式进行展示。
表4.1 博客文章信息表
字段 | 类型 | 空 | 默认 | 注释 |
id | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
wenzhangbiaoti | varchar(200) | 否 | 文章标题 | |
tupian | varchar(200) | 是 | NULL | 图片 |
wenzhangfenlei | varchar(200) | 是 | NULL | 文章分类 |
jianjie | longtext | 是 | NULL | 简介 |
wenzhangneirong | longtext | 是 | NULL | 文章内容 |
faburiqi | date | 是 | NULL | 发布日期 |
yonghuming | varchar(200) | 是 | NULL | 用户名 |
yonghuxingming | varchar(200) | 是 | NULL | 用户姓名 |
sfsh | varchar(200) | 是 | 否 | 是否审核 |
shhf | longtext | 是 | NULL | 审核回复 |
表4.2 留言板信息表
字段 | 类型 | 空 | 默认 | 注释 |
id | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
userid | bigint(20) | 否 | 留言人id | |
username | varchar(200) | 是 | NULL | 用户名 |
content | longtext | 否 | 留言内容 | |
reply | longtext | 是 | NULL | 回复内容 |
表4.3 管理员信息表
字段 | 类型 | 空 | 默认 | 注释 |
id | bigint(20) | 否 | 主键 | |
username | varchar(100) | 否 | 用户名 | |
password | varchar(100) | 否 | 密码 | |
role | varchar(100) | 是 | 管理员 | 角色 |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 新增时间 |
表4.4 文章分类信息表
字段 | 类型 | 空 | 默认 | 注释 |
id | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
wenzhangfenlei | varchar(200) | 是 | NULL | 文章分类 |
表4.5 相册分类信息表
字段 | 类型 | 空 | 默认 | 注释 |
id | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
xiangcefenlei | varchar(200) | 是 | NULL | 相册分类 |
表4.6 相册分享信息表
字段 | 类型 | 空 | 默认 | 注释 |
id | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
xiangcemingcheng | varchar(200) | 是 | NULL | 相册名称 |
xiangcefenlei | varchar(200) | 是 | NULL | 相册分类 |
fengmiantu | varchar(200) | 是 | NULL | 封面图 |
jianjie | longtext | 是 | NULL | 简介 |
xiangceneirong | longtext | 是 | NULL | 相册内容 |
faburiqi | date | 是 | NULL | 发布日期 |
yonghuming | varchar(200) | 是 | NULL | 用户名 |
yonghuxingming | varchar(200) | 是 | NULL | 用户姓名 |
sfsh | varchar(200) | 是 | 否 | 是否审核 |
shhf | longtext | 是 | NULL | 审核回复 |
表4.7 用户信息表
字段 | 类型 | 空 | 默认 | 注释 |
id | bigint(20) | 否 | 主键 | |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
yonghuming | varchar(200) | 否 | 用户名 | |
mima | varchar(200) | 否 | 密码 | |
yonghuxingming | varchar(200) | 否 | 用户姓名 | |
touxiang | varchar(200) | 是 | NULL | 头像 |
xingbie | varchar(200) | 是 | NULL | 性别 |
shoujihaoma | varchar(200) | 是 | NULL | 手机号码 |
youxiang | varchar(200) | 是 | NULL | 邮箱 |
5 系统功能
进入到这个环节,也就可以及时检查出前面设计的需求是否可靠了。一个设计良好的方案在运用于系统实现中,是会帮助系统编制人员节省时间,并提升开发效率的。所以在系统的编程阶段,也就是系统实现阶段,对于一些不合理的设计需求,也是可以及时发现。因为设计的方案是完全指导系统的编码过程的。
5.1 管理员功能实现
5.1.1 文章分类管理
管理员进入指定功能操作区之后可以管理文章分类。其页面见下图。管理员新增文章分类,查询文章分类,及时修改或删除有异常的文章分类信息。
图5.1 文章分类管理页面
5.1.2 博客文章管理
管理员进入指定功能操作区之后可以管理博客文章。其页面见下图。管理员审核博客文章,通过审核之后的博客文章会在前台展示,查看用户对博客文章的评论。
图5.2 博客文章管理页面
5.1.3 相册分享管理
管理员进入指定功能操作区之后可以管理用户分享的相册信息。其页面见下图。管理员审核相册信息,点击每行的查看评论链接可以查看对应相册的评论。
图5.3 相册分享管理页面
5.1.4 留言板管理
管理员进入指定功能操作区之后可以管理留言。其页面见下图。留言功能的设置主要是在管理员与用户之间建立信息交流的渠道。
图5.4 留言板管理页面
5.1.5 相册分类管理
管理员进入指定功能操作区之后可以管理相册分类。其页面见下图。管理员设置相册的分类,维护相册分类信息,包括修改,查询,删除。
图5.5 相册分类管理页面
5.2 用户功能实现
5.2.1 博客文章
用户进入指定功能操作区之后可以查看博客文章。其页面见下图。用户查看博客文章内容,评论当前页面的博客文章。
图5.6 博客文章页面
5.2.2 相册分享
用户进入指定功能操作区之后可以查看相册分享信息。其页面见下图。用户评论本页面的相册,查看相册的内容。
图5.7 相册分享页面
5.2.3 留言反馈
用户进入指定功能操作区之后可以提交留言。其页面见下图。当用户提交了留言信息之后,只需要等待管理员的回复信息。
图5.8 留言反馈页面
6 系统测试
进入这个环节就代表着系统已经结束了编码实现功能阶段,接下来要做的事情,就是对该系统进行检测,也就是系统测试,这个环节是很有必要进行的,原因是开发本系统的人员,其自身具备的开发技术以及开发思维是有限的,在面对具有复杂性操作逻辑的系统,都会出现大大小小的错误,并且这样的错误还都是不可避免的。通过及时的测试,可以尽早排除程序中的错误,这样也可以减少实际运行中产生的问题,从而真正避免在后期使用中为修复这些问题所付出的高昂代价。及时测试,及时发现问题并解决,也是提高开发过程的效率的一种表现形式。总而言之,在软件开发生命周期的每个阶段都需要加以重视,并做好每个阶段需要做的任务,从开始到结尾都需要保证开发软件的质量。
6.1 功能测试
通过设计一些数据检验个人博客网站的功能是否根据预定进行数据输出,以此检验系统功能是否合格。接下来就选取部分功能进行检测。
6.1.1 登录功能测试
个人博客网站提供的服务是给规定的用户使用的,其他无关用户是无法进入的,登录功能就是检验访问者是否是符合要求的用户,及时将不符合要求的用户拒之门外。以此保证系统安全。这里以管理员身份进行检测,测试的内容见下表。
表6.1 登录功能测试表
账号 | 密码 | 身份 | 结果 |
guanliyuan | guanliyuan | 管理员 | 提示成功,进入系统后台 |
user | guanliyuan | 管理员 | 提示失败,停留在登录页面 |
guanliyuan | user | 管理员 | 提示失败,停留在登录页面 |
个人博客网站在面对正确的账号,不匹配的密码时,会有相应的反馈,其反馈结果见下图。
图6.1 登录错误反馈提示
6.1.2 修改密码功能测试
这个功能的设置也是出于对系统的保护,让操作人员的密码可以一直变化,减少泄露的几率。测试的数据见下表。通过验证旧密码,确认操作者是本人,然后开始对新密码进行登记。一般修改完密码后,需要再次登录。
表6.2 修改密码功能测试表
旧密码 | 新密码 | 密码修改结果 |
guanliyuan | gl | 成功 |
user | gly | 失败 |
guanliyuan | 失败 |
本系统在面对登记错误的旧密码信息时,有相应的反馈提示,见下图。
图6.2 旧密码错误提示
6.2 测试结果
经过测试,从个人博客网站功能的角度来看,本系统各个功能在符合用户要求的情况下,也能保持运行正常。从个人博客网站性能的角度来看,本系统可以保持24小时不间断运行,而且面对用户的误操作行为,有提前设置的错误反馈机制应对,另外,本系统界面布局考虑用户阅读习惯,可以让用户短时间内获取需要的内容。总之,本系统可以投入生产,帮助用户解决实际问题,发挥其应用价值。
7 总结
采用Java+Mysql的方式设计制作的个人博客网站,在功能上可以满足管理人员对于信息的管理需求;在界面的设计上,尽最大努力用自身的美工知识做到界面美观简洁。在操作方面上,让系统可以方便操作,同时对用户常见的误操作行为进行分析总结,并尽力在系统中避免同样的由于用户的误操作所带来的错误现象。
作为毕业设计,分配给本系统的设计与制作时间还是不足的,所以,个人博客网站还有许多需要完善的地方。
第一个就是本系统的编程代码问题,各个程序文件的代码存在冗余的地方非常多,导致代码不够简洁,同时对代码的注释也比较麻烦。编码期间,对于很多页面可以共享的函数与方法都没有单独列出来,而是在需要用到函数和方法的页面上都重新编写了代码,通过后期的技术学习,以及对编码过程的分析总结,发现可以把共用的函数或方法编写在同一个页面上,在之后的页面中,需要使用此函数的页面,则可以直接调用函数,无需再编写代码了,这样可以简化代码,也能节省时间和存储空间。
第二个就是对数据库的设计不够好,在数据处理中,影响程序运行速度。因此需要对数据库的性能进行优化。通过这方面知识的学习,在某个开发技术类的博客中,发现可以用数据库连接池技术来解决数据库的性能问题,另外还需规范数据库里面的关系模式,降低数据库的冗余率,提高运行速度。
如果说平时的作业也是检查对知识的掌握情况,那么制作毕业设计,将是对自身所有知识的一个全面检测。因为系统能够制作完成则是经历了很多阶段,正如文中所展示的那样,先有可行性分析,对功能的分析,对功能的设计,对数据库的设计,对程序功能的编码实现,对完成编码程序的测试等,这些环节缺一不可,而且还都需要认真对待,大学学到的所有知识在制作系统时,才会发现不够用。所以这个项目制作,在检测自身能力的同时,也对问题分析,资料搜集,问题解决等能力进行了培养。
我通过制作本系统,熟悉了程序开发的流程,提高了对程序的编码能力,培养了独立分析与解决问题的能力;但也让我明白自身的不足之处,所以在接下来的时间,我还是要加强对技术知识的学习,去逐渐完善本系统。