软件工程基于SSM框架的个人博客管理系统开发与设计Word格式.docx

上传人:b****6 文档编号:20582042 上传时间:2023-01-24 格式:DOCX 页数:24 大小:984.22KB
下载 相关 举报
软件工程基于SSM框架的个人博客管理系统开发与设计Word格式.docx_第1页
第1页 / 共24页
软件工程基于SSM框架的个人博客管理系统开发与设计Word格式.docx_第2页
第2页 / 共24页
软件工程基于SSM框架的个人博客管理系统开发与设计Word格式.docx_第3页
第3页 / 共24页
软件工程基于SSM框架的个人博客管理系统开发与设计Word格式.docx_第4页
第4页 / 共24页
软件工程基于SSM框架的个人博客管理系统开发与设计Word格式.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

软件工程基于SSM框架的个人博客管理系统开发与设计Word格式.docx

《软件工程基于SSM框架的个人博客管理系统开发与设计Word格式.docx》由会员分享,可在线阅读,更多相关《软件工程基于SSM框架的个人博客管理系统开发与设计Word格式.docx(24页珍藏版)》请在冰豆网上搜索。

软件工程基于SSM框架的个人博客管理系统开发与设计Word格式.docx

以下是对该框架总结:

Spring的优势:

在日常软件开发中,亟需“高内聚、低耦合”的开发的思维。

不仅仅简化了开发,并且在一定程度上降低了耦合程度。

系统添加新功能,进行依赖注入的方式简化开发,Spring的AOP特性的应用,可以说对模块进行管理,便于维护及迭代开发,如可以进行权限的控制等管理。

SpringMVC的优势:

使用SpringMVC具有强大的灵活性,代码层逻辑功能分明,对模块之间的耦合性处理优化具其重要作用同时,还提供对于配置处理程序的映射,支持多种视图技术等多种优势。

Mybatis的优势:

1、与JDBC相比,极大程度上减少超过50%的代码量,有利于代码统一管理和优化,代码重用性及灵活性大大提高。

2、MyBatis是持久化框架,轻量级并且简单易学。

3、提供XML标签,为SQL语句环境提供更大的便利性。

设计中使用了SSM框架,提高了web系统维护效率,降低维护风险,更方便管理人员[1]。

现在IT行业上,涌现诸多更加优秀的框架,如SpringBoot等,但是理解到行业内仍有大多公司基于SSM框架开发,尤其是一些政府竞标项目。

纵然知道,现在有更好的、成熟的技术和框架出现,但是,由于政府类开发项目前期开发时,系统设计架构没有采用流行的技术和框架,如果后期采用新框架,需要耗费较大资源进行构建新框架,项目迁移、调试生产环境等问题上。

同SSM框架先进在行业上仍占有一定的比例,具有一定的稳定性。

因此选择基于SSM框架上开发个人博客管理系统。

2.2easyUI框架

前端使用easyUI框架。

通过编写一些简单HTML标记,就可以设计个性化用户的界面。

封装整合底层代码,为开发提供遍历,使用便签定义,即可快速开发前端页面,如,页面列表,下拉树等,往常需要许多编写复杂代码,现在借助框架,则可以节约开发时间。

个人认为在当下技术主流中较为容易上手且功能强大。

在大小上来看,其属于轻量级的js库,也就是说经过压缩之后其大小仅为21k,其不仅适用于CSS3,并且还能够运行各种浏览器。

与此同时,其便捷高效的查询功能与各种各样的插件,使其广泛运用于网页美工设计之中[2]。

jQuery还无缝集成了桌面应用程序的用户体验,在Web开发的基础上,有效的提升用户体验,以及引进更多的新用户。

jQuery改变了Web应用程序的开发方式,无论它是用户体验,与数据库的交互,回发等等[3]。

2.3B/S结构模式

与C/S( 

Client/Server)结构相比较,不同的是B/S(Browser/Server)结构基于浏览器开发,跟操作系统没有密切关系。

因此跨平台是B/S结构的独特优势。

因为需要投入成本,硬件投资保护等级较低,较少情况下对系统进行维护和升级,所以B/S结构被越来越多的软件开发人员或企业级所引用,是互联网普及的助推剂。

B/S结构能够极大降低用户的个体成本和软件实施工程成本,而且还减轻服务器的负载和系统维护成本,减少因此能够为软件信息行业带来更大的经济效益。

3、需求分析

3.1系统功能分析

个人博客管理系统中用户群体核心主要分为管理员模块和用户模块。

系统整体分析之后,设计如下系统功能模块总体框架图如图3-1所示:

图3-1系统功能模块总体框架图

用户模块包括注册、登录、博客管理、博客类型管理、评论管理、个人信息管理、支付管理和系统管理等功能,满足大部分的用户使用功能。

管理员模块中涵盖用户所用功能,还有审核发帖内容、删除贴子、模块管理和博主管理等功能。

游客模式是提供给用户的一个体验的过程。

3.2系统性能需求分析

a)软件的准确性和及时性:

系统的准确性和及时性几乎可以评定一个软件的优劣程度。

每个软件模块化开发结束后,必须对软件进行测评,极力追求符合用户原型及满足用户需求文档。

个人博客管理系统的设计与开发也应按照严格的标准,需要评估未来网站的用户使用量,确保网站能够正常运转,满足用户的使用需求。

如果出现严重问题,用户体验度则大打折扣,将会流失大量的用户。

需要准确的评估网站的可承受的负载能力范围。

b)系统的开发性和系统可扩充性:

系统在开发过程中,经常会遇到出现需求变更的问题,因此系统必须拥有一定程度上的扩展性,使系统功能的允许调整和扩充。

采用SSM框架进行系统开发,对系统的扩展具有一定的优势。

例如,越来越多用户提出建议改良系统的某个模块或者是增加一些模块,如果系统的可扩充性差,是不能继续进行迭代开发的。

建立新框架、重构代码以及进行代码迁移等多个复杂步骤,对每一个企业和开发人员都是一段“长征路”,非常消耗资源。

c)系统的易用性和易维护性:

系统面向广大网络用户,用户可能对计算机应用操作并不熟悉,因此,在开发过程中,优良的人机交互界面,能够极大的吸引用户,为用户提供便利。

在满足用户量和数据量的基本要求之后,系统应该优先中文信息界面,同时有足够的提示和引导信息和完善的使用文档。

3.3系统可行性

开发周期:

文档编写4周,代码编写5周,软件测试2周。

法律方面分析

法律方面的问题较多的是对劳动成果的窃取,如著作权、文稿版权等。

当下开发是非常支持开源的,也不反对劳动成果的有偿性补助,如用户的打赏跟支持也是可以作为回报的。

个人博客系统并不是以市场盈利为目的而开发。

因此没有涉及太多违反网络安全的问题。

系统设计及技术分析

开源的环境下,提高了开发效率。

至今熟SSM框架的环境搭建,熟悉数据结构、JAVA语言开发与应用,前端框架使用easyUI框架、JavaScript、CSS和JSP开发与之配套,熟悉数据库(MYSQL)设计及SQL语句的编写。

因此,在设计开发个人博客管理系统是有条件完成和实现的。

社会可行性分析

系统开发与用户需求量的骤增有着强关联关系。

社会秩序稳定,经济发展迅速,企业科技愈发成熟,互联网正在影响并改变着我们的生活方式,我们需要对日常生活中的海量信息进行集中处理,因此,需要一个博客管理系统,帮助处理信息及日常管理。

4、系统功能模块设计

4.1系统总体结构设计

个人博客管理系统设计,系统包括注册功能、登陆功能、博客管理功能、博客类别管理、个人信息管理功能、评论管理功能、系统管理功能、支付功能。

如图4-1系统横向结构设计图所示:

图4-1系统横向结构设计图

用户注册模块,当用户完成注册信息的填写,系统进行个人信息的保存时,不推荐使用直接将用户密码原封不动的保留到数据库中。

保存的过程中应当做适应的处理,如系统是采用MD5及解析字符串加密方法对用户密码进行处理,再进行保存。

用户注册页面,个人隐私是非常重要的。

系统把用户输入的密码,通过固定的加密规则,计算出MD5的字符串,增加密码复杂度。

登录过程中,将用户输入的密码与数据库中经过MD5程序加密后的字符串进行比较这样就有效的提升用户信息的安全性。

用户进行登录,在系统登录界面输入个人信息并进行提交操作。

系统进行对用户提交相关信息表单进行初步验证,信息输入需要符合要求,验证成功则登录系统首页,否则返回登录界面并且反馈给用户输入有误信息提示,修正后再次请求提交。

登录流程图如4-2所示:

图4-2登录流程图

按照以往的方式编写登录验证流程,需要冗余重复的代码较多,反复请求、反复验证。

当用户进行登录访问操作时,Shiro会从配置文件中过滤查找相关用户及其权限信息[5]。

Realm能做的工作主要有一下几个方面:

身份验证,权限获取,令牌支持。

在系统中登录流程中主要是应用身份验证和权限认证的功能,用户验证通过后,返回给系统的信息。

 

登录控制部分代码如图4-3所示:

图4-3登录控制部分代码

博客管理中包含发表文章、博客信息管理操作功能,用户对文章的添加、发布、修改及删除;

个人博客类别的添加、修改及删除等删除操作。

个人信息管理功能,用户在界面中可编辑个人信息包括头像、昵称等信息。

评论管理模块,是用户和博主沟通交流的桥梁之一,用户可以评论文章内容,登陆用户可以对对应文章处下方进行评论操作。

输入准确的验证码。

包含评论添加、审核、删除。

用户评论文章博客后,需要博主进行审核处理,其中未审核和审核不通过不予公布显示,只用审核通过的评论才能显示。

拓展链接(友好链接),是自定义目标地址,实现用户快捷跳转的方式,可以节省时间。

支付打赏功能。

用户浏览查询博客,用户可以完全自愿前提的条件下通过打赏途径进行打赏。

不仅仅是对博主的文章认可和赞赏,也是对博主个人一定的肯定和支持。

鼓励继续专研和学习,坚持并继续发布更好的文章。

系统类图主要是围绕用户写博客建模设计,博主类是用于存放用户以及管理员所有信息的类。

包括用户名、密码、个人信息、昵称、个性签名以及个人头像等信息。

根据标识进行权限管理和控制。

博客类主要是管理写博客相关内容。

包括博客标题、摘要、发表时间、点击数、评论数、内容、所属博客类别以及关键字。

用户对博客文章,进行添加、删除、修改和查询等相关功能操作。

根据博客类中所属博客类别字段是外键,关联到博客类型表。

在博客中,对博客类型一栏的属性选择是依赖博客类型类中的关联属性。

评论管理类是评论博客的操作管理。

其他用户对浏览的当前博客进行评论操作后,该评论需要后台管理员对审核进行评论审核。

审核通过则显示,反之则不显示。

友情链接类是管理在博客配置的关联链接。

包括友情链接网站名字、网站地址。

通过链接可便捷的打开该链接地址的首页,进而方便用户体验。

系统类图设计如图4-4所示:

图4-4系统类图

4.2博客发布的状态流程图

系统功能模块的状态流程图是开发起到重要作用,有序的,清晰简明的流程图能够支持我们在开发过程中指示的作用,明确下一步开发目标及功能应用,能够帮助帮助我们从开发模块中顺利过渡,不仅仅节约开发时间,而且减少需求缺失的风险。

同时,在系统安全性上和完整性上具有参考作用。

例如,在用户处于登录状态前是不允许发布文章和评论博客,这就需要程序员开发程序的过程中加以限制。

系统状态图如图4-5所示:

图4-5系统状态图

用户使用账号密码登录成功之后,可以开始使用“写博客”功能,按要求填写博客标题、所属博客类别、博客内容以及关键字。

进行发布博客文章。

如需要修改文章内容,则可以使用“博客信息管理”功能,进行文章内容的修改,提交并重新发布。

用户在浏览其他博客文章的时候,允许在文章下栏添加评论,用户提交评论后,需要管理员在后台审核,审核通过则将显示在文章篇幅评论一栏。

审核不通过,则无法显示在文章下方。

可以及时删除用户的评论信息。

点击友情链接(如XX、谷歌等),则帮助跳转至该地址首页。

运用用户修改、添加、删除友情链接内容。

用户按个人需求编辑个人信息(如昵称、个性签名等)。

5、数据库分析

5.1概念结构设计

概念模型可以帮助我们更好的理解系统,是数据库人员对数据库进行设计的重要工具。

E-R模型,深刻的理解实体之间相互的关联关系,清晰可见。

为数据库开发提供良好的设计基础,避免遗漏的问题出现。

博客管理系统数据库E-R如图4-6所示:

图4-6系统数据库E-R图

5.2逻辑结构设计

在E-R模型的基础上,进行系统数据库的逻辑机构设计。

在企业实习过程中,发现数据库设计,表与表之间常常没有主外键相互依赖的关系。

企业级业务需求复杂且表数据量级别大的情况下,表之间不使用主外键,而是在事务中进行控制。

使用外键的情况下,在删除数据和添加数据时,需要先后依赖,不够灵活,容易报错。

尤其是IT行业开发人员流动性大且开发文档编撰不完善的情况下,对于软件后期维护带来一定的难度。

下面是总结数据库设计主外键的优劣势:

建立外键的好处:

1)保证系统数据的完整性,多应用时,由程序来保证数据完整性变得困难,例如,多表关联查询的情况

2)外键约束使得数据库的ER图可读性变强,有助于业务逻辑设计

3)主外键关联作用,进行多表查询效率更高

不建立外键的好处:

1)简化开发,维护数据时不用考虑外键约束

2)性能高,大数据量插入操作时不用考虑维护外键

3)进行单元测试、系统测试时提供便利,数据之间约束降低

5.3物理结构设计

数据表主要有名称、字段名称、数据类型、是否为主键及备注构成。

在数据表设计方面,写法较多,但是核心不可更改。

综上完成数据的存储方式及结构,根据逻辑数据模型,新建以下数据表。

表5-1博客表

名称

字段名称

数据类型

主键

非空

博客id

id

int

yes

标题

title

varchar

no

摘要

summary

发表时间

releaseDate

dateTime

点击数

clickHit

评论数

replyHit

内容

content

text

所属博客类别

typeId

关键字

keyWord

博主id

blogId

评论id

commentId

表5-2博主表

用户名

userName

密码

passWord

个人信息

profile

昵称

nickName

个性签名

sign

头像地址

imageName

表5-3博客类型表

博客类型id

类型名称

typeName

序号

orderNo

表5-4友情链接表

友情链接id

网站名称

linkName

网站地址

linkUrl

表5-5博客评论表

博客评论id

评论者ip

userIp

评论内容

评论时间

commentDate

评论状态:

0未审核1审核通过2审核不通过

state

企业级开发中,IT公司为了一般拥有一套完整的、成熟的代码生成工具,生成基本常用的逻辑代码。

降低影响项目迭代开发,延误周期开发等不确定因素。

但也存在一定的弊端,工具生成项目多余的代码,虽然是不影响系统开发和上线。

但是在代码评估审核上,有种冗余的感觉。

如果数据库设计表数量多,效果会更加明显,部署实施工程中就需要留用分配更多的内存用于支撑。

综上所得,生成项目工程前需要准备充足,尤其是对数据库需求文档时进行审核时,确定数据库字段命名、数据库字段类型及长度、字段非空属性、字段描述备注等。

建议要有保留字段并且要有清晰的注释,用于备忘。

前期准备充足,是为了降低需要重新生成代码的风险,尽管不需要耗费太多的时间。

企业开发是多个开发人员进行合作,此类风险会一定程度延误开发进度。

6、功能设计模块

注册页面

详细操作

输入项:

登录名,登录密码,邮箱账号

输出项:

若注册成功,则直接跳转登录页面,反之,则提示错误操作信息。

处理:

对用户登录账号、密码、邮箱输入栏进行非空判断;

下一步则是用户有效性校验。

如图6-1所示:

图6-1注册页面图

登录界面

对用户登录账号、密码、邮箱输入栏进行非空验证进行初步判断;

进一步对用户合法性进行判断。

登陆界面设置游客模式选项,用户尚未真正使用过,了解过一个系统,不会一开始就选择直接注册用户,成为系统用户。

因此设置游客模式,提供浏览查看的权限,如果用户希望自己写博客,则需要进行注册,才允许登录用户界面,进而在系统上发布文章。

登录页面如图6-2所示:

图6-2登录页面图

网站浏览界面有几个模块组成,顶部导航栏、最新博客、博主信息、按日志类型分类,按时间类别分类及友情链接部分共同组成。

顶部导航栏是由固定导航栏、天气预报栏及去全局搜索栏构成。

最新博客模块主要包含的是系统中推送显示最新的博客信息和概要内容,每一栏都有时间部分,文章摘要部分,阅读数,评论数组成。

列表时间顺序按倒叙排列,这样博主就能浏览其他博主最新的博客文章。

博主信息显示博主头像、账号昵称和个性签名。

按日志类别分类是帮助用户整理已发布的文章,文章是由博客类型进行分类,是由系统内部自动完成。

博客类型需要用户自主创建或按已有的博客类型进行分类。

按日志日期分类帮助用户总结和整理一个时间段的发布文章数量及内容,是由系统内部自动完成。

友情链接部分是允许用户将浏览频率高的网页保存,添加为常用浏览网页,如关注优秀博主文章,可以直接跳转到目标页面或者是一些开发文档的地址。

主要目的是提供便捷渠道,为用户提供便利。

博主编写博客发布文章界面,按要求填写博客标题、博客所属类别、博客内容

以及关键字。

均有验证判断,如果用户满足填写要求,点击发布按钮,则提示发布成功。

反之,则提示用户博客必填选项为满足发布要

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 文化宗教

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1