基于ssm的汽车论坛管理系统设计与实现
摘要:信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难以攻克的课题。针对汽车论坛管理等问题,对汽车论坛管理进行研究分析,然后设计开发出汽车论坛管理系统以解决对汽车相关信息问题。
汽车论坛管理系统主要功能模块包括系统用户管理、新闻数据管理、论坛管理、系统管理,采取面对对象的开发模式进行软件的开发和硬体的架设,能很好的满足实际使用的需求,完善了对应的软体架设以及程序编码的工作,采取Mysql作为后台数据的主要存储单元,采用JavaEE框架、JSP技术、Ajax技术进行业务系统的编码及其开发,实现了本系统的全部功能。
针对汽车论坛管理系统的各项需求以及技术问题进行分析,证明了系统的必要性和技术可行性,然后对设计系统需要使用的技术软件以及设计思想做了基本的介绍,最后来实现汽车论坛管理系统和部署运行使用它。
关键词:汽车论坛,帖子,版块
Design and implementation of auto forum management system based on SSM
Abstract: In the information society, there is a need for targeted access to information, but the expansion of the access is basically the direction of people's efforts. Due to the deviation of the Angle of standing, people can often obtain different types of information, which is also the most difficult problem to overcome by technology. Aiming at the problems of automobile forum management, this paper studies and analyzes the automobile forum management, Then the management system of automobile forum is designed and developed to solve the problem of automobile related information.
Automobile BBS management system main function modules include user management, news management, BBS management, system management, data object to face up to the development mode of software development and hardware construction, can well meet the needs of actual use, improve the set up and the corresponding software program coding work, take the Mysql as the main storage unit of the background data, using JavaEE framework, JSP technology, Ajax technology to coding and the development of the business system, realize the whole function of this system. This report firstly analyzes the background, function and significance of the research, which lays a foundation for the rationality of the research work. Based on the analysis of the various requirements and technical problems of the automotive forum management system, the necessity and technical feasibility of the system are proved, and then the technical software and design ideas needed to design the system are introduced, and finally the implementation of the automotive forum management system and the deployment and operation of the use of it.
Key words: Automotive forum,Post,Block
目 录
第1章 绪论 1
1.1 系统的开发背景及意义 1
1.2 国内外论坛研究现状 1
1.2.1 国外论坛研究现状 1
1.2.2 国内论坛研究现状 2
1.3 研究方法 3
1.4 研究的内容 3
第2章 系统需求分析 4
2.1 可行性分析 4
2.2 功能需求分析 4
2.2.1 前台用户功能 4
2.2.2 后台系统管理员的功能 5
2.3 非功能需求分析 5
2.4 系统安全性分析 5
2.4.1 系统的安全性 6
2.4.2 数据的安全性 6
2.5 UML系统建模 6
2.5.1 用例图 6
2.5.2 用例图规约表 7
2.6 本章小结 9
第3章 系统设计 10
3.1 系统架构设计 10
3.2 系统总体设计 11
3.3 论坛系统顺序图 11
3.3.1 前台游客、用户顺序图 11
3.3.2 后台系统管理员顺序图 14
3.4 汽车论坛管理系统活动图 17
3.4.1 前台用户活动图 17
3.4.2 后台管理员活动图 18
3.5 数据库设计 19
3.5.1 数据需求分析 19
3.5.2 数据库概念设计 20
3.5.3 数据库表 20
3.6 本章小结 22
第4章 系统实现 23
4.1 注册模块的实现 23
4.2 登录模块的实现 23
4.3 用户资料修改模块的实现 24
4.4 新闻数据管理模块的实现 24
4.5 版块管理模块的实现 25
4.6 论坛交流模块的实现 26
4.7 本章小结 27
第5章 系统测试 28
5.1 测试目的 28
5.2 功能测试 28
5.3 性能测试 30
5.4 本章小结 30
第6章 课题展望 31
参考文献 32
致谢 33
第1章绪论
1.1系统的开发背景及意义
BBS论坛是网络上的信息交流平台,对于论坛,再熟悉不过的是论坛擅长做线上信息交流,能够帮助网友们有更方便的跨地域信息交流的空间,使用论坛对感兴趣的话题可以提出各种各样的想法,讨论喜欢的话题,也可以通过论坛发表话题讨论或者帮助解答疑问。还可以针对论坛的话题发表看法,并表达自己的观点。跟其他用户交流对某些问题的看法,在互联网快速发展的时代,BBS论坛的作用将是无法替代的。
就这样,论坛的发展是离不开互联网以及手机移动互联网的,未来汽车用户和车主在交流汽车的话题信息时,可以从汽车论坛上获得更多。汽车对于人们的出行生活中有着重要的作用,使人们的生活快速便利。在交通管理局最新的汽车驾驶人员总数中得知:2.5亿人为汽车车主; 4.2亿人为机动车驾驶员,这数据是截止于2019年6月我国的机动车保有量。在未来,汽车驾驶人员依然会越来越多。这个群体的人员不断上升,有更多的人在讨论交流汽车信息,丰富汽车驾驶人员的生态圈,必然使线上汽车交流论坛拥有越来越大的发展趋势,为驾驶人员或潜在的车主提供更加丰富、全面便捷的汽车信息交流论坛。
通过互联网或手机移动互联网访问BBS系统,即可随时随地获取各种汽车最新最全的信息;也可以利用各种各样的论坛,一起和网友们讨论手机电子产品、各种DIY产品、以及音乐等众多乐趣的话题。
这个论坛管理系统是一个汽车论坛管理系统,以是讨论汽车驾驶员各种生活、旅行和汽车安全信息为主的论坛,与其他论坛管理系统功能大致相关,主要功能有了登录、注册、更改个人信息、发表帖子、回复帖子还有后台管理等功能,都是为了让汽车车主拥有更为全面丰富的汽车信息所设计的汽车论坛管理系统。线上线下,大家聊车。
1.2国内外论坛研究现状
1.2.1国外论坛研究现状
最先创建的BBS交流论坛系统是CBBS/Chicago,以8080芯片为基础,诞生于1978年的芝加哥,这是最先开发出来的交流论坛。从一开始出现直至发展到现在,BBS交流论坛的功能都在不断升级和完善,现在世界上知名的BBS网上论坛有Quora,还有几个具有很高知名度的有FidoNet(惠多网)、zFrontier(极客产品社区)等。这些BBS论坛和FidoNet之间的讨论交互不是问题,因此可以实现所谓的跨网络。交流论坛只是为论坛的用户的消息交互和圈子交流服务,而且论坛也没有搜索引擎、浏览器,也不算个人网站。主要有以下四项主要功能:话题相关的新闻报导、产品的二手信息、发表个人看法还有交流解答。时间的推移,随着互联网和手机移动互联网的发展,后面出现的一些网站慢慢的取代了BBS论坛的一些功能。论坛里主要的前三个功能被剔除了出去,并成为其他知名的网站,例如:个人博客、电子商务等,这几种网站逐渐发展成各自的门户网站。最后的互动问答暂时尚未出现门户网站,这类网站被称为witkey。
1.2.2国内论坛研究现状
这些BBS交流论坛在我们国家,可以根据不同的性质区分,如:新华龙讯网、天堂资讯站。就不同性质来说,新华龙讯网是属于商业论坛网站,;天堂资讯站则是其他一些业余爱好的交流论坛。普通用户使用商业BBS论坛要交予使用费,并且与业余站相比,使用商业的论坛所能提供的服务,不能体现出有哪些优势,因此其用户数量不多。现在很多的交流论坛的站长,因为是个人建立的交流论坛,所以天天都要互换网络邮件,此时惠多网(FidoNet)就是在这样的环境下成长为电子邮件网站。于是,跟其他地方的网友相互交流,就需要用到BBS交流论坛,而不同地方的论坛用户都可以通过论坛进行交流讨论的。
所谓的"业余"的BBS论坛,能够满足更多的用户需求,实现异地交流,使得商业BBS论坛无法与"业余"的BBS论坛相媲美,越来越多的用户喜欢使用BBS交流论坛。业余爱好的交流论坛大多为个人开发,为维护论坛环境所付出的时间、精力、金钱,使得中国互联网快速发展,间接提高电脑、手机移动用户的网络交流水平。
现在的国内外知名的BBS论坛,确确实实可以作为网络上BBS论坛设计的顶尖水准,虽然这些论坛的设计是最好的,但是却有着不足之处,大型知名论坛中为了利益,都有大量广告的插入,以及论坛存在大量的相关内容,论坛用户或新用户没办法迅速浏览想要的话题,存在各种各样不人性化的问题,特别是国内一些论坛的难以查找发现,没有使用各种话题总结归纳和杂乱的排版,应当设计成用户发帖以话题版块为主,将帖子内容进行归属方便新老用户的浏览相关内容。
1.3研究方法
首先,通过引擎搜索或者查阅相关文献资料,了解了本系统开发的背景以及设计系统的意义所在,收集用户需求信息。其次,在开发工具上,最终确定选用Java平台来设计开发本系统,Mysql作为设计数据库的工具。即利用Java语言实现用户界面,并同数据库连接起来实现完整的通信功能。之后,设计出系统大致的功能模块。主要从方便系统用户和系统管理员的角度进行分析,明确该系统应该具有的功能。最终是测试系统,通过用例测试发现存在的问题并找到解决的方案。利用现有的开发平台,结合自己所学的知识,在老师的指导帮助下来完成该设计,确保系统的可用性、实用性。
1.4研究的内容
以汽车论坛管理系统为研究内容,是一个以在线论坛为平台,方便用户交流喜欢的话题为主。论坛用户可以使用论坛平台发表帖子主题,对感兴趣的话题阐述观点和想法。后台系统管理员主要对违反论坛规矩的用户进行删除,对违规帖子删除,以及对版块进行修改、删除管理。
该汽车论坛管理系统是以B/S结构为基础,而进行的功能模块设计。后台系统中运用的MVC,前端运用的UI框架,数据库使用Mysql等等内容。
第2章系统需求分析
2.1可行性分析
技术性方面,采用当前主流的JavaEE框架进行系统主体框架的搭建,前台使用jquery,ajax,实现前台页面的设计与美观调整,以上技术,均由本人经过系统学习,并且都是在课程设计中实践过的,可以使得开发更加便捷和系统。从技术角度看,这个系统是完全可以实现的。
实用性方面,本次设计的主要任务是在汽车论坛管理系统内新闻浏览、发帖、回帖等,符合当前潮流的发展。从用户角度出发,同时也考虑系统运营成本和人力资源,采用网络上的便捷方式,实现线上业务,使得业务流程更系统,也更方便用户的体验,比较实用。
经济性方面,由于本课题中设计的汽车论坛管理系统的主要目的是为了能够更加方便及快捷的进行信息的查询管理及检索服务,也就是能够可以直接投入使用的信息化软件。系统的主要成本主要是集中在对使用数据后期继续维护及其管理更新这个操作上。但是一旦系统投入到实际的运行及使用之后就能够很好的提高信息查询检索的效率,同时也需要有效的保证查询者的信息方面的安全性,同时这个汽车论坛管理系统所带来的实际应用方面的价值是远远的超过了实际系统进行开发与维护方面的成本,因此,从经济上来说开发这个软件是可行的。
2.2功能需求分析
汽车论坛管理系统以前台用户功能、后台系统管理员功能这两大功能为主。前台用户根据自己的需求进行注册登录,浏览版块信息并对选中的版块进行发帖操作。后台系统管理员主要对帖子进行处理,对注册用户,新闻信息,版块详细信息进行修改和删除处理等。
2.2.1前台用户功能
前台用户可分为未注册游客需求和以注册用户需求。
未注册游客的功能如下:
注册账号:用户填写个人信息。
浏览新闻数据:用户可以浏览主页面的新闻数据来了解系统的最新新闻数据。
浏览版块:用户可以根据版块类型浏览版块的信息,并选中某个版块查看详情,例如:编号、名称、简介、版主等。
已注册用户的功能如下:
登录:根据账号密码进行登录操作。
维护个人信息:用户因个人信息的变更可以随时修改自己注册信息。
浏览新闻数据:用户想要了解相关的最新新闻,例如一些公告资讯信息,可以浏览主页面的新闻数据信息。
浏览版块:用户可以根据自己喜欢的内容选择浏览相应的版块信息,并点击某个版块查看详细信息,例如:编号、名称、简介、版主等。
版块发帖:用户根据自己的需求选中某个版块进行发帖操作。
查看历史帖子单:用户可以查看自己以往发帖的信息。
论坛交谈:论坛交谈在用户模块里主要以发帖回帖的形式展示出来,用户在想要讨论的版块里进行谈论话题即可。
2.2.2后台系统管理员的功能
后台系统管理员具备以下的功能:
登录密码更改:登录系统的密码可更改,更能保护系统安全。
对帖子的信息进行处理:办理帖子审核等。
版块信息管理:对版块信息进行维护、删除、修改信息。
新闻数据信息管理:发布、删除相关的新闻数据信息。
用户管理:可以查看注册用户的信息,并对其进行管理。
2.3非功能需求分析
首先主要考虑的是系统功能软件,在具体设计的环节上,是不是能够较好的满足各类用户的基本功能需求,如果不能较好的满足用户需求,那么这个系统的存在是没有价值的。软件系统的非功能性求分析,从7个方面展开,一个是性能分析,针对系统;一个是安全分析,针对系统,一个是完整度分析,针对系统,一个是可维护分析,针对系统,一个是可扩展性分析,针对系统,一个是适应业务的性能分析。面对汽车论坛管理系统存在的性能、安全、扩展、完整度等7个方面性能综合比对分析后发现,非功能性的需求分析也是系统所需要的。
2.4系统安全性分析
2.4.1系统的安全性
用户信息隐私是系统安全的前提条件,这是最重要的。系统的安全性越高越可以保护企业的信息和用户的信息不被窃取。提高系统的安全性是开发人员的职责,这不单单是对用户的隐私负责,更是对企业安全、名誉的保护。尤其针对于汽车论坛管理系统来说,必须要有很好的安全性来保障整个系统。
系统具有对使用者有权限控制,针对角色的不通限制使用者的权限,以此来确保系统的安全性。
2.4.2数据的安全性
从外界输入的数据,在输入数据到数据库的过程中,可能会将无效的数据、脏数据也一并输进数据库中。所以,在有多用户的关系数据库系统中,为了让输入的数据符合规定,才是最应该关注的问题。
最后,当数据的完整性、正确性、一致性得到保证时,此时数据才能输入到数据库。
2.5UML系统建模
2.5.1用例图
游客功能用例图,用例图如下:
图2-1游客功能用例图
前台用户和后台系统管理员功能用例图,用例图如下:
图2-2论坛管理系统用户功能用例图
图2-3后台管理员功能用例图
2.5.2用例图规约表
游客用例规约表:
表2-1 用户注册登录用例规约表
用例编号 2-1 用例名称 注册登录
功能描述 当游客注册或登录之后,游客成为用户。
执行者 普通游客
前置条件 汽车论坛管理系统正常运行
后置条件 如果是游客,身份变成用户
基本路径 1.没有合法帐号和密码的用户进入注册页面
按提示规范填入账号和密码
向系统提交注册申请信息
系统查找本地数据库检测账号是否已存在
若不存在则将信息记录到本地数据库的用户列表
提示用户注册成功
扩展 无
用户用例规约表:
表2-2 用户发表帖子用例规约表
用例编号 2-2 用例名称 发表帖子
功能描述 用户可以以帖子的形式发表自己的意见看法。
执行者 用户
前置条件 用户被系统正常识别和授权
后置条件 数据库保存发表的帖子信息
基本路径 1.选择某版块进入,单击"发表帖子",显示界面
1.1输入帖子信息,单击"提交"按钮
1.2显示发表成功,保存信息
扩展 无
表2-3 浏览帖子用例规约表
用例编号 2-3 用例名称 浏览帖子
功能描述 用户可以查看帖子内容及相关信息。
执行者 用户
前置条件 用户身份被系统正常识别和授权
后置条件 数据库保存浏览的帖子信息
基本路径 1.选择某版块进入,单击"浏览帖子",显示界面
1.1显示所有发表过的帖子,单击帖子链接
1.2显示帖子内容和相关信息
1.3退出浏览
扩展 无
表2-4 回复帖子用例规约表
用例编号 2-4 用例名称 回复帖子
功能描述 用户可以回复帖子信息。
执行者 用户
前置条件 用户身份被系统正常识别和授权
后置条件 数据库保存回复的帖子信息
基本路径 1.选择某版块进入,单击"回复帖子",显示界面
1.1显示所有发表过的帖子,单击帖子链接
1.2显示帖子内容,输入回帖内容,单击"提交"
1.3显示回帖内容
扩展 无
后台管理员规约表:
表2-5 删除用户用例规约表
用例编号 2-5 用例名称 删除用户
功能描述 管理员可以删除违反论坛规矩或者有不良记录的用户。
执行者 管理员
前置条件 管理员身份被系统正常识别和授权
后置条件 数据库不保存有删除会员的信息
基本路径 1.管理员进入用户管理界面,单击"删除用户",显示界面
1.1显示用户信息,确认删除
1.2界面无显示被删除的用户
扩展 无
表2-6 帖子管理用例规约表
用例编号 2-6 用例名称 帖子管理
功能描述 管理员可以删除不符合论坛规矩或者不良记录的帖子。
执行者 管理员
前置条件 管理员身份被系统正常识别和授权
后置条件 数据库不保存有删除帖子的信息
基本路径 1.管理员进入用户管理界面,单击"删除帖子",显示界面
1.1显示帖子信息,确认删除
1.2界面无显示被删除的帖子
扩展 无
表2-7 修改版块用例规约表
用例编号 2-7 用例名称 修改版块信息
功能描述 管理员可以修改版块号、主题名等
执行者 管理员
前置条件 管理员身份被系统正常识别和授权
后置条件 数据库已保存修改的版块信息
基本路径 1.管理员进入版块管理界面,单击"修改",显示界面
1.1输入修改版块相关内容,提交
1.2显示修改成功,保存信息
扩展 无
表2-8 删除版块用例规约表
用例编号 2-8 用例名称 删除版块
功能描述 管理员可以删除违规或不必要的版块
执行者 管理员
前置条件 管理员身份被系统正常识别和授权
后置条件 数据库不保存删除的版块信息
基本路径 1.管理员进入版块管理界面,单击"删除"
1.1显示版块列表,点击"版块"确认删除
1.2显示删除成功
扩展 无
2.6本章小结
本章分析了汽车论坛管理的大概需求,和设计系统的一些功能。汽车论坛管理系统的功能的设计主要包括前台用户功能:注册、登录、浏览贴子、发帖、。后台管理员功能:用户删除、帖子删除、版块修改或删除。另外,本章从前台用户、后台管理员这两个重要角色的角度对系统进行了UML建模,最后列举部分功能的规约表。
第3章系统设计
3.1系统架构设计
本汽车论坛管理系统有Web层、Service层、Model层3层的架构设计。View层与Controller层属于Web层里的,Model层包括元数据扩展层和数据访问层。
- Web 层的主要是完成Model、View和Controller的整合工作,其中Model的整合工作是通过编写调用服务层的Action对象来完成的,View的整合工作是通过编写JSP页面来完成的。
2.Service层也称为业务层,对业务模块进行逻辑设计。从controller层的数据传过来后就由业务层进行处理,处理完成后传递到Dao层与数据库链接后,做增删改查操作。对Dao层传过来的数据进行处理,总之Service就是处理数据、控制事务。
3.Controller层: Controller层主要调用Service层里面的接口来控制具体的业务流程,控制层的配置也要在配置文件中进行,Controller负责具体的业务模块流程的控制。
4.View层:View层与Controller层两者比较紧密,需要二者结合起来协同工发。View层主要负责前台jsp页面的表示。
5.Model层对数据库表内容的封装,利用操作Java对象的方式来操作数据库中的表。
系统架构如下图所示:
图3-1 系统架构图
3.2系统总体设计
汽车论坛管理系统分为用户模块和系统管理员模块。
根据系统需求分析确定模块的功能,两个模块的功能表现独立,并且访问的是同一数据库,查阅相关资料后整理设计制作的。
因此,汽车论坛管理系统的功能结构图如下图所示:
图3-2 系统功能结构图
3.3论坛系统顺序图
3.3.1前台游客、用户顺序图
1.前台游客注册和登录顺序图
论坛的用户注册:游客进入论坛系统,点击注册后在注册界面输入注册的账号、密码以及验证码。系统提交相关注册信息到后台数据库。后台数据库判断验证码是否正确,并查询用户是否已经注册存在,进行了相关处理后。游客登录后可选择自己来修改个人信息等操作。个人信息会上传到后台数据库,注册成功后刷新页面并登录汽车论坛管理系统。
图3-3游客注册登录顺序图
2.用户发表帖子顺序图
普通用户登录汽车论坛管理系统,在用户功能页面,点击发表帖子,跳转至发表帖子页面,显示页面的信息,然后就可以输入帖子信息以及想要表达的内容到发表帖子界面中,当前台用户点击确定,后台数据库存储用户发表的帖子详细信息,发表成功并更新页面。
图3-4用户发表帖子顺序图
3.用户浏览或回复帖子顺序图
浏览或回复帖子主要有普通用户、用户功能界面、浏览或回复界面及后台数据库这几个对象。普通用户在用户功能界面中选择回复或浏览,该界面将发送消息给浏览或回复界面并显示该界面。显示帖子列表页面,论坛用户可以选择自己感兴趣的帖子,点击帖子链接,系统显示帖子的内容给用户浏览,在回复帖子时,输入回复相关信息,当前台用户点击确定,后台数据库存储用户回复的帖子详细信息,,并更新页面显示发表的信息。
图3-5用户浏览或回复帖子顺序图
3.3.2后台系统管理员顺序图
1.用户删除顺序图
系统管理员登录进入到用户管理页面后,选择需要删除的违规用户,在显示用户列表页面的时候,系统从数据库提取所有普通用户的信息,形成用户信息列表,在页面中显示所有普通用户。管理员点击某个用户时,页面出现指定用户的信息。系统管理员根据用户的操作信息,并判断用户是否违反论坛规矩,再决定执行删除该用户。当系统管理员点击删除用户的操作后,后台数据库会自动保存该操作信息,并更新用户页面,不再显示被删除用户的相关信息。
图3-6用户管理顺序图
2.帖子管理顺序图
系统管理员登录进入到帖子管理页面后,选择可以删除的违规帖子,或查看用户帖子的操作,同时会显示相应的页面,在显示页面的时候,论坛管理系统在后台数据库里获取用户帖子信息,形成相关帖子列表,在页面中显示出来。管理员点击某个帖子时,页面则出现指定帖子的信息内容。管理员根据帖子的信息来判断删除帖子,当管理员执行删除操作,后台数据库保存操作信息,并更新页面,不在显示删除过的帖子。
图3-7帖子管理顺序图
3.修改版块、删除版块顺序图
系统管理员登录进入到版块管理页面后,选择执行修改或删除版块操作,进入相应的操作页面,管理员根据页面上的提示,设置信息。当系统管理员提交修改版块详细信息的操作时,论坛管理系统会将管理员修改后输入的信息上传到后台数据库中保存;保存成功后,更新版块页面,显示修改过的版块。当管理员执行删除操作,后台数据库保存操作信息,并更新页面,不在显示删除过的版块。
图3-8修改版块、删除版块顺序图
3.4汽车论坛管理系统活动图
3.4.1前台用户活动图
1.用户功能活动图
前台用户必须经过登录才能进入论坛系统,用户输入需要登录的账号、密码,登录成功后,用户就能在功能页面里使用系统的前台功能。登录失败后论坛系统提示重新登录。当进入用户功能页面后,普通用户就可以进行一些功能操作:如发表帖子、回复帖子、浏览帖子等。以上几个功能是并行的,普通用户可以只操作其中的一项后就可以退出系统。
图3-9用户功能活动图
3.4.2后台管理员活动图
1.管理员功能活动图
系统管理员登录进入到用户管理页面后,论坛用户的管理页面向管理员显示所有用户列表。管理员点击需要删除的用户进行操作,当删除操作完成后,既可退出系统,操作结束。当管理员选择了删除帖子时,流程是:进入帖子管理页面后,选择某个帖子,根据帖子的详细信息,确定是否删除,当管理员提交操作后,帖子删除成功。系统管理员进入版块管理,可以选择删除/修改版块信息,操作成功后,即可退出论坛管理系统。
图3-10管理员功能活动图
3.5数据库设计
3.5.1数据需求分析
在前面的论坛管理系统的功能中,可以分析到版块信息、用户信息、管理员信息、还有帖子信息,这些数据库中最重要的信息。分析可以得到如下数据描述:
平台用户:用于记录用户的各种信息,其中有账号、密码、发表帖子的详细信息还有信誉等各种数据项。
管理员:存储管理员登录使用的用户名、密码。还有其他权限的数据项。
版块:记录有版块的各种详细信息,如:版块编号、名称、简介、版主等数据项。
版块发帖:存储用户的版块发帖信息。含有版块发帖的标题、类型、相关话题、附件、发帖人、是否置顶帖子等数据项。
新闻数据:存储平台内的新闻数据内容。有新闻标题、新闻详细信息、新闻发布的时间,这几种数据项。
3.5.2数据库概念设计
根据前面的数据,结合系统的功能模块设计,设计出符合系统的各信息实体。
系统ER图如下图所示:
图3-11 系统ER图
3.5.3数据库表
汽车论坛管理系统所拥有的数据表有以下:用户信息表,版块信息表,版块发帖表。
因为相关数据表比较多,所以只展示系统主要的数据表,如下表所示。
1.User(用户信息)表,数据如表3-1用户信息表所示:
表3-1 用户信息表
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 id Int 4 10
2 username 150 255
3 pwd 150 255
4 cx 150 255
5 addtime DateTime 8 19
2.bankuai(版块)表,数据如表3-2版块表所示:
表3-2 版块表
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 id Int 4 10
2 bianhao 150 255
3 mingcheng 150 255
4 jianjie 1073741823 255
5 banzhu 150 255
6 addtime DateTime 8 19
3.tiezi(帖子)表,数据如表3-3帖子表所示:
表3-3帖子表
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 id Int 4 10
2 bankuai 150 255
3 biaoti 150 255
4 leixing 150 255
5 neirong 1073741823 255
6 fujian 150 255
7 faburen 150 255
8 addtime DateTime 8 19
9 fid Int 4 10
10 issh 1073741823 255
4.xinwentongzhi (新闻通知)表,数据如表3-4新闻通知表所示:
表3-4新闻通知表
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 id Int 4 10
2 biaoti 150 255
3 leibie 150 255
4 neirong 1073741823 255
5 shouyetupian 150 255
6 dianjilv 150 255
7 tianjiaren 150 255
8 addtime DateTime 8 19
9 zhaiyao 1073741823 255
5.yonghuzhuce(用户注册)表,数据如表3-5用户注册表所示:
表3-5用户注册表
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 id Int 4 10
2 yonghuming 150 255
3 mima 150 255
4 xingming 150 255
5 xingbie 150 255
6 chushengnianyue DateTime 8 19
7 QQ 150 255
8 youxiang 150 255
9 shouji 150 255
10 shenfenzheng 150 255
11 touxiang 150 255
12 dizhi 150 255
13 beizhu 1073741823 255
14 issh 30 255
15 addtime DateTime 8 19
6.youqinglianjie(友情链接)表,数据如表3-6友情链接表所示:
表3-6友情链接表
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 10
2 wangzhanmingcheng 150 255
3 wangzhi 150 255
4 addtime DateTime 8 19
5 LOGO 1073741823 255
3.6本章小结
本章对设计汽车论坛系统的大致架构,以及给出了部分汽车论坛管理系统功能顺序图、和部分的活动图,更加直观地展示了汽车论坛管理系统的各个功能;然后是论坛管理系统的数据库进行设计。
第4章系统实现
4.1注册模块的实现
普通游客注册页面,如图4-1游客注册页面。游客需要填写:用户名、密码、姓名、性别、出生年月、QQ、邮箱等详细信息。填写完相关信息后点击"提交"就可以进行注册的操作;当用户注册成功时,系统自动跳转到登陆页面。
图4-1游客注册页面
4.2登录模块的实现
用户登录页面,如图4-2用户登录页面。用户在使用登录功能时,首先填写正确的用户名、密码和验证码,然后点击"登陆"按钮,才能够完成登陆操作。当前台用户在点击"登陆"按钮后,系统将对其身份进行验证,后台数据库验证登录的相关信息,如果用户名、密码还有验证码都正确,即通过了身份验证,汽车论坛系统将刷新页面,论坛用户才能正常使用对应的操作。
图4-2用户登录页面
4.3用户资料修改模块的实现
只有用户登录汽车论坛系统成功后,才能够修改用户个人的基本信息。修改页面的表单中每一个input的name值都要与实体类中的参数相匹配,在用户点击修改页面的时候,如果改后用户名与数据库里面重复了,页面会提示该用户名已经存在了,否则通过Id来查询用户,并将用户的信息修改为表单提交的数据。
图4-3用户资料修改界面
4.4新闻数据管理模块的实现
如果新闻数据的信息需要修改,管理员可以通过查询新闻数据的基本信息来查询新闻数据,查询新闻数据是通过ajax技术来进行查询的,需要传递新闻数据的标题、编号等参数然后在返回到该页面中,可以选中要修改或删除的那条信息,如果选中了超过一条数据,页面会挑一个窗口提醒只能选择一条数,如果没有选中数据会挑一个窗口题型必须选择一条数据。当选择确认修改的时候,后台会根据传过来的id到数据库查询,并将结果返回到修改页面中,可以在修改页面中修改刚刚选中的信息当点击确认的时候from表单会将修改的数据提交到后台并保存到数据库中,就是说如果提交的数据数据库中存在就修改,否则就保存。
新闻数据展示界面如下图所示:
图4-4新闻数据展示页面
新闻数据管理界面如下图所示:
图4-5新闻数据管理页面
4.5版块管理模块的实现
版块添加页面,如图4-6版块添加页面。页面包含了四个文本域编号、名称、简介、版主。和两个按钮(提交、重置),当管理员输入:编号、名称、简介、版主这些信息并点击提交按钮后,界面跳转至版块列表,并新增一个版块。
图4-6版块添加页面
版块管理界面如下图所示:
图4-7版块管理页面
4.6论坛交流模块的实现
论坛交流提供系统所有用户发布帖子、回复帖子、浏览帖子,管理员发布论坛的某一版块,用户可以在自己感兴趣的版块里发表相关讨论的帖子,多个相关话题的帖子归纳为一个版块,用户可以根据自己需求发布加急、普通、推荐、求助等类型的帖子。
首先管理员新增话题版块,在bankuai_add.jsp请求添加话题版块,响应到dao层的insert()方法,完成版块的新增。用户发布帖子,则在tieziadd.jsp请求新增帖子信息,响应到逻辑层的添加方法,同步到数据库完成操作。
版块管理界面如下图所示:
图4-8版块管理界面
帖子发布界面如下图所示:
图4-9帖子发布界面
4.7本章小结
这章节主要是对系统的部分模块设计与实现,从几个方面阐述了汽车论坛管理系统的设计与实现。论坛系统功能模块的设计主要包含了:用户注册、用户登陆、用户资料修改、新闻管理以及版块管理模块这些功能模块。在最后,本章节给出了部分汽车论坛功能实现的页面图。
第5章系统测试
5.1测试目的
系统测试都是必不可少的环节,测试可以发现系统存在的很多问题,所有的软件上线之前,都应该进行充足的测试之后才能保证上线后不会Bug频发,或者是功能不满足需求等问题的发生。下面分别从单元测试,功能测试和用例测试来对系统进行测试以保证系统的稳定性和可靠性。
5.2功能测试
下表是系统登录功能测试用例,检测了用户名和密码的不同的输入情况,观察系统的响应情况。得出该功能达到了设计目标。
表5-1 系统登录功能测试用例
功能描述 用于系统登录
测试目的 检测登录时的合法性检查
测试数据以及操作 预期结果 实际结果
输入的用户名或者密码有非法字符 提示用户名或者密码错误 与预期结果一致
输入的用户名或者密码为空 提示用户名或者密码错误 与预期结果一致
输入的用户名和密码不存在 提示用户名或者密码错误 与预期结果一致
输入正确的用户名和密码 登录成功 与预期结果一致
下表是注册功能测试用例,检测了各种数据的输入情况,观察系统的响应情况。得出该功能达到了设计目标。
表5-2 注册功能测试用例
功能描述 用于用户注册
测试目的 检查用户注册时的合法性
测试数据以及操作 预期结果 实际结果
输入的手机号不合法 提示请输入正确的手机号码 与预期结果一致
输入的字段为空 提示必填项不能为空 与预期结果一致
输入的密码少于6位 提示密码必须为6-12位 与预期结果一致
输入的密码大于12位 提示密码必须为6-12位 与预期结果一致
下表是版块管理功能的测试用例,检测了版块管理中对版块信息的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。
前置条件;管理员登录后台管理系统。
表5-3 版块管理的测试用例
功能描述 用于版块管理
测试目的 检测版块管理时的各种操作的运行情况
测试数据以及操作 预期结果 实际结果
单击添加版块,版块信息输入合法,点击保存 提示添加成功 与预期结果一致
单击添加版块,板块信息输入不合法,单击保存 提示必填项不能为空 与预期结果一致
点击修改版块,必填项修改为空,点击保存 提示必填项不能为空 与预期结果一致
单击修改版块,修改信息输入不合法,单击保存 提示必填项不能为空 与预期结果一致
点击删除版块,选择版块删除 提示删除成功 与预期结果一致
点击搜索版块,输入存在的版块名 查找出版块 与预期结果一致
点击搜索版块,输入不存在的版块名 不显示版块 与预期结果一致
下表是帖子管理功能的测试用例,检测了帖子管理中对帖子信息的增加,删除,修改,查询操作是否成功运行。检查论坛系统的响应时间,得出这功能也达到了设计目标,管理系统运行结果正确。
前置条件;管理员登录后台管理系统。
表5-4 帖子管理的测试用例
功能描述 用于帖子管理
测试目的 检测帖子管理时的各种操作的运行情况
测试数据以及操作 预期结果 实际结果
点击添加帖子,必填项合法输入,点击保存 提示添加成功 与预期结果一致
点击添加帖子,必填项输入不合法,点击保存 提示必填项不能为空 与预期结果一致
点击修改帖子,必填项修改为空,点击保存 提示必填项不能为空 与预期结果一致
点击修改帖子,必填项输入不合法,点击保存 提示必填项不能为空 与预期结果一致
点击删除帖子,选择帖子删除 提示删除成功 与预期结果一致
点击搜索帖子,输入存在的帖子名 查找出帖子 与预期结果一致
点击搜索帖子,输入不存在的帖子名 不显示帖子 与预期结果一致
5.3性能测试
使用阿里云PTS(Performance Testing Service)性能测试服务对线上系统进行压力测试。线上服务器环境为:1核心CPU,1G内存,1Mbps公网带宽,Centos7.0操作系统。
压测过程中使用了2台并发机器,每台机器20个用户并发,对系统主页,登录,数据查询和数据维护等模块进行并发访问,测试结果是有40个用户并发时,数据管理相关页面的响应时间甚至达到了7s,通过查看服务器出网流量发现已经达到1381kb/s,可以看出服务器的带宽已经达到峰值,如果系统使用5Mbps的带宽,系统的响应时间和TPS将会大大增加。在整个测试的过程中,CPU的使用率占用仅8%,也提现出带宽瓶颈对系统的影响非常严重。
5.4本章小结
汽车论坛管理系统是基于Spring+SpringMVC+MyBatis框架开发的,系统测试主要是对其组件测试和DAO层测试。此章节是对软件测试的意义、目的和进行了简单的介绍,然后给出了管理系统主要功能进行测试的测试案例,在章节的最后给出了本系统的部分测试及过程中相应的结果。
第6章结束语
6.1全文总结
随着计算机互联网技术的迅猛发展,各行各业都已经实现采用计算机相关技术对日益放大的数据进行管理。该课题是汽车论坛管理系统为核心展开的,主要是为了实现汽车论坛信息化管理和用户在线交流的需求。
汽车论坛管理系统的开发是以Java编程语言作为基础,在Myeclipse平台上完成编码工作,系统整体为B/S架构,数据库系统使用Mysql。文中详细分析了汽车论坛管理系统的研究背景、研究目的和意义、开发工具和相关技术以及系统需求、系统详细设计和系统测试等等一系列内容。系统实现了汽车论坛管理系统所需的一些基本功能,并通过测试对这些实现的功能进行了完善,进而提高了系统整体的实用性。整个系统的开发过程中大量使用了Java相关的知识以及前端开发使用的html和javascript等,同时涉及到了很多开源框架和组件,例如后台系统中运用的MVC架构、Freemarker模板引擎等,前端运用的UI框架等。
6.2课题展望
因为开发经验的不足,只能保持在汽车论坛管理系统保持运行时,所有系统功能运行正常无报错。系统的每个界面的操作符合常规逻辑,对使用者来说操作简单,界面友好。整个系统的各个功能设计合理,体现了人性化。
但是由于自己在系统开发过程中对一些用到的相关知识和技术掌握不够牢固,再加上自身开发经验欠缺,因此系统在有些方面的功能还不够完善,考虑的不够全面,因此整个系统还有待日后逐步完善。
参考文献
[1] 李刚.疯狂Java讲义.第四版.电子工业出版社.2018
[2]唐权.SSM框架在JavaEE教学中的应用与实践[J]. 福建电脑,2017,33(12):93-94+61.
[3] 葛建霞.《JSP动态网页设计》课程中项目教学法的应用研究[J].宿州教育学院学报,2017,20(04):160-161.
[4] 林萍,朱婵. 基于Ajax技术和JAVAEE的分页查询优化[J]. 计算机系统应用,2017,26(08):184-189.
[5]孙朝云,张羽.基于B/S结构汽车论坛管理系统设计与实现.计算机应用与软件,2014,29(3):183-186.
[6]李海海.基于Spring框架的汽车论坛管理系统的设计与实现.湖南大学,2015.
[7]计文柯.Spring技术内幕:深入解析Spring架构与设计原理(第2版).机械工业出版社,2015.
[8]闫新.基于WEB的汽车论坛管理系统设计与实现.电子科技大学,2014.
[9] Zoya Ali. Designing Object Oriented Software Applications within the Context of Software Frameworks[D]. Ohio State University,2011.
[10] 赵萍.公民健康信息管理系统中MySQL数据库技术的应用[J]. 电脑迷,2017,(06):97.
[11]邓皓泽,李默. MySQL数据库性能优化研究[J]. 电脑迷,2016,(12):179.
[12]Bruce Eckel. Thinking in Java[M]. Upper Saddle River, New Jersey, USA:Prentice Hall, 2006
[13]Craig Walls, Ryan BreidenBach. Spring In Action[M]. Manning Publications.2006
[14] Rachit Mohan Garg, YaminiSood, Balaji Kottana, Pallavi Totlani. A Framework Based Approach for the Development of Web Based Applications Waknaghat[J].Jaypee University of Information Technology,2011,1(1):1-4.
致谢
本次设计历时3个月。在这个毕业设计里,它离不开指导老师的指导,使事情基本顺利。指导老师在毕业设计的过程中,给了我特别大的帮助。另一个方面,老师认真负责的工作态度、充满着的教学精神、以及很高的理论水准都使我获益匪浅。她认真负责的教学态度也值得我学习模仿。我从老师那里学到了很多东西。在理论和实践中,我的技能得到了特别大的提高。在此,特向老师表示由衷的感激。
经过对该毕业设计的全部研究和开发,我的系统研发经历了从需求分析到实现详细功能,再到最终测试和维护的特殊进展。让我对系统研发有了更深层次的认识。如今我的动手本领单独处理疑惑的本领也获取到了特别大的演练学习增多,这是这次毕业设计最好的收获。
最后,在整个系统开发过程中,我周围的同学和朋友给了我很多意见,所以我很快就确认了系统的商业思想。在次,我由衷的向他们表示感激。