




已阅读5页,还剩47页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
天津工业大学毕业设计(论文)基于Java EE的大学校园论坛系统的设计与实现全套设计加扣 3012250582姓 名 学 院 计算机科学与软件专 业 软件工程 指导教师 职 称 2015年 6 月 1日天津工业大学毕业设计(论文)任务书题目基于Java EE的大学校园论坛系统的设计与实现学生姓名XXX学院名称计算机科学与软件学院专业班级软件1104课题类型实际课题课题意义在互联网技术高速发展的推动下,互联网跨入了虚拟社区时代,根据调查,我国上网的几亿人中有38.8%使用论坛,BBS等公众形式的虚拟社区。用户规模达到了9822万人,在网络应用中排名第九,已经跻身十大网络应用之首。与此同时,学校也进入了信息化时代。为了方便大学校园学生与学生,学生与老师,老师与学生之间的互动交流以及资源共享,决定开发一个基于在校大学生的校园论坛系统。本系统通过建设BBS系统平台,为学生们提供一个发布、分享、交流、获取信息的平台。通过论坛系统,用户可以发表自己的言论(主题帖),其他的用户可以对主题贴进行评论(跟帖)或分享资源(主题帖)。主要用于在校大学生及老师之间的交流,共同探讨一些国家时事问题,关注学校最新动态及时的为用户提供生活及学习的帮助,分享资源,结识好友,抒发自己的情怀,加深同学们的友谊,扩展同学们的知识,共建和谐校园。任务与进度要求2015.3.9-2015.3.292015.3.30-2015.4.122015.4.13-2015.5.102015.5.11-2015.5.312015.6.1-2015.6.62015.6.7选题确认并完成开题报告、任务书的填写、提交、审核深入了解课题内容、需求分析、确定系统框架、熟悉开发工具完成课题概要设计和详细设计,代码编写、网页制作,完成系统的大部分功能,初稿完成进行系统调试,并在调试中进一步完善系统的各项功能,二稿完成毕业设计(论文)的审核、修改及定稿并装订答辩主要参考文献1 孙卫琴.Tomcat与Java Web开发技术详解M.北京电子工 业出版社,2005.08 2 王路群.Java高级程序设计.中国水利水电出版社,2006.3 胡婷.基于SSH银行客户管理系统的研究D.南昌大学,2011.4 刘媛春,罗云翔基于JSP的动态网页技术J成都信息工程 学院学报,2005.045 刘方军.基于MVC三层架构模式的研究与应用D.广东工业大 学,2011.起止日期2015年3月9日至2015年6月7日备注院长 教研室主任 指导教师 _ _ _ 毕业设计(论文)开题报告表2015年3月23日姓名XXX学院计算机科学与软件专业软件工程班级软件1104题目基于Java EE的大学校园论坛系统的设计与实现指导教师一、与本课题有关的国内外研究情况、课题研究的主要内容、目的和意义:1. 与本课题有关的国内外研究情况 在互联网技术高速发展的推动下,互联网跨入了虚拟社区时代,根据调查,我国上网的几亿人中有38.8%使用论坛,BBS等公众形式的虚拟社区。用户规模达到了9822万人,在网络应用中排名第九,已经跻身十大网络应用之首。与此同时,学校也进入了信息化时代。为了方便大学校园学生与学生,学生与老师,老师与学生之间的互动交流以及资源共享,决定开发一个基于在校大学生的校园论坛系统。2. 课题研究的主要内容通过建设BBS系统平台,为学生们提供一个发布、分享、交流、获取信息的平台。通过论坛系统,用户可以发表自己的言论(主题帖),其他的用户可以对主题贴进行评论(跟帖)或分享资源(主题帖)。3. 课题研究的主要的目的和意义本系统主要用于在校大学生及老师之间的交流,共同探讨一些国家时事问题,关注学校最新动态及时的为用户提供生活及学习的帮助,分享资源,结识好友,抒发自己的情怀,加深同学们的友谊,扩展同学们的知识,共建和谐校园。4. 本次毕业设计应达到的目标 实现在校大学生及老师之间的交流,一些热点新闻,事件的发布及讨论,资源的分享等。二、进度及预期结果:起止日期主要内容预期结果2015.3.9-2015.3.292015.3.30-2015.4.122015.4.13-2015.5.102015.5.11-2015.5.312015.6.1-2015.6.62015.6.7选题确认并完成开题报告、任务书的填写、提交、审核深入了解课题内容、需求分析、确定系统框架、熟悉开发工具完成课题概要设计和详细设计,代码编写、网页制作,完成系统的大部分功能,初稿完成进行系统调试,并在调试中进一步完善系统的各项功能,二稿完成毕业设计(论文)的审核、修改及定稿并装订答辩完成完成完成完成完成完成完成课题的现有条件硬件: 华硕笔记本电脑一台软件: 运行环境:Windows7 旗舰版系统; 开发平台:MyEclipse8.5; 服务器:tomcat; 数据库:MySQL5.1; 美工软件:PhotoshopCS3.参考文献:1 孙卫琴.Tomcat与Java Web开发技术详解M.北京电子工 业出版社,2005.08 2 王路群.Java高级程序设计.中国水利水电出版社,2006.3 胡婷.基于SSH银行客户管理系统的研究D.南昌大学,2011.4 刘媛春,罗云翔基于JSP的动态网页技术J成都信息工程 学院学报,2005.045 刘方军.基于MVC三层架构模式的研究与应用D.广东工业大 学,2011.审查意见指导教师: 年 月 日学院意见主管领导: 年 月 日天津工业大学本科毕业设计(论文)评阅表(论文类)题目基于Java EE的大学校园论坛系统的设计与实现学生姓名XXX学生班级软件1104指导教师姓名王佳欣 韩巍评审项目指标满分评分选题能体现本专业培养目标,使学生得到较全面训练。题目大小、难度适中,学生工作量饱满,经努力能完成。10题目与生产、科研等实际问题结合紧密。10课题调研、文献检索能独立查阅文献以及从事其他形式的调研,能较好地理解课题任务并提出实施方案;有分析整理各类信息,从中获取新知识的能力。15论文撰写结构严谨,理论、观点、概念表达准确、清晰。10文字通顺,用语正确,基本无错别字和病句,图表清楚,书写格式符合规范。10外文应用能正确引用外文文献,翻译准确,文字流畅。5论文水平论文论点正确,论点与论据协调一致,论据充分支持论点,论证过程有说服力。15有必要的数据、资料支持,数据、资料翔实可靠,得出的结论有可验性。15论文有独到见解或有一定实用价值。10合计100意见及建议:评阅人签名: 年 月 日天津工业大学毕业设计(论文)成绩考核表学生姓名XXX学院名称计算机科学与软件学院专业班级软件1104题目基于Java EE的大学校园论坛系统的设计与实现1毕业设计(论文)指导教师评语及成绩:成绩: 指导教师签字: 年 月 日2毕业设计(论文)答辩委员会评语及成绩:成绩:答辩主席(或组长)签字: 年 月 日3毕业设计(论文)总成绩:a.指导教师给定成绩b.评阅教师给定成绩c.毕业答辩成绩总成绩(a0.5+b0.2+c0.3)摘 要在当今世界,互联网技术发展迅速,实现了各种各样的业务需求,使原来不可能的事情变成了现实,涌现了各种各样的网络应用,正在以不同的形式融入到人们的日常生活当中,为人们的衣食住行提供了极大的便利。为了方便在校大学生之间,学生与老师之间的交流互动以及资源的共享,决定开发一个基于在校大学生的校园论坛系统。实现一个功能简单,公平开放的交流分享平台,学生和老师可以自由地提出问题以及帮助他人解决问题。本系统整体采用MVC模式实现,运用SSH三大框架将系统分解为四层,分别为Web层,业务层,持久层,数据库。Web层由struts2实现,业务层由Spring实现,持久层由Hibernate实现,数据库使用mysql。除此之外,系统的前台界面运用了bootstrap前台UI组件,后台管理界面运用了简单易操作的EasyUI。本系统主要有两个角色,分别为普通用户和管理员。普通用户可以发表帖子和回复帖子。管理员可以对用户进行管理,对帖子进行删除,对板块进行管理。关键词:校园论坛;用户管理;帖子管理;SSHABSTRACTIn todays world, the Internet technology has developed rapidly, the realization of the various business requirements, make originally the impossible into reality, have produced a variety of network applications, are in a different form into Peoples Daily life, provides the daily life of people with great convenience.For the convenience of college students, between students and the interaction between the teacher and resource sharing, decided to develop a campus BBS system based on college students. Realize a simple function, fair and open sharing platform, students and teachers are free to ask questions and to help others to solve the problem.This system USES the MVC pattern implementation, using SSH three will be broken down into four layers of the system, respectively for the Web layer, business layer and persistence layer, database. Web layer by the struts 2 implementation, the business layer by the Spring, the persistence layer by Hibernate implementation, using mysql database. In addition, the system of the front desk interface using the bootstrap UI components at the front desk and background management interface using EasyUI simple easy to operate.This system mainly has two roles, respectively for ordinary users and administrators. General users can publish posts and reply posts. The administrator can manage the user, to delete posts, to supervise and control the plate. Key words:The campus BBS;User management;Post management;SSH目录第一章绪论11.1 课题背景介绍11.1.1 开发本系统的背景11.1.2 开发本系统的意义11.2 关于本系统21.2.1 本系统的开发目标21.2.2 本系统的开发环境2第二章系统开发环境及技术分析32.1 系统开发环境分析32.1.1 开发工具 MyEclipse32.1.2 web服务器 tomcat32.1.3 数据库 MySQL32.1.4 操作系统 Windows732.2 系统开发技术分析42.2.1 J2EE简单介绍42.2.2 B/S结构的分析42.2.3 MVC设计模式分析42.2.4 SSH框架技术分析5第三章 大学校园论坛系统系统需求分析63.1 需求分析63.1.1 功能需求分析63.1.2 安全性分析63.2 论坛系统可行性分析63.2.1 技术可行性分析63.2.2 经济可行性分析63.2.3 使用可行性分析73.3 系统用例分析83.3.1 系统模块主要功能分析83.3.2 系统主要参与者分析83.3.3 系统主要用例分析9第四章 大学校园论坛系统的设计94.1系统架构设计94.1.1 系统web层详细设计104.1.2 系统业务层详细设计104.1.3 系统持久层详细设计104.1.4 系统架构整体结构设计114.2 系统主要用例设计114.3 数据库设计134.3.1 数据库概念结构设计134.3.2数据库逻辑结构设计134.3.3 数据库表结构设计134.4 系统安全体系设计15第五章 大学校园论坛系统的实现与测试165.1 系统的实现165.1.1 系统Web层实现165.1.2 系统业务层实现225.1.3 系统持久层实现235.2 系统功能测试275.2.1 系统查看帖子列表测试275.2.2 系统发帖回帖模块测试285.2.3 系统管理员后台管理模块测试295.2.4 系统用户注册模块测试30第六章 结论32参考文献33附录34.英文原文34.中文译文38谢辞41天津工业大学2015届本科生毕业设计(论文)第一章 绪论1.1 课题背景介绍1.1.1 开发本系统的背景在当代,人和人之间的交流方式越来越丰富,QQ、博客等软件已经成为人们之间进行交流的首选,但这不方便大家在某一个特定的话题里进行讨论,对于这个问题,技术人员开发出了论坛来解决这个问题,主要就是用户在上面发表一个自己遇到的问题或者话题或者想法,供在论坛上的用户自由进行讨论和发表自己的看法,由于各个论坛使用的目的不同,于是就分为校园论坛、专业论坛、商业论坛、小型局部BBS、业余BBS和新闻媒体BBS,校园论坛在整个网上论坛占很大的比例,因为现在大学生越来越多,大家想要在网上找到更多的校友,他们就会在网上找到他们学校开设的论坛,关注他们大学最新的消息,并可以跟学弟和学妹们进行交流;专业论坛更多的是由大公司或者技术非常强悍的认识建立和发起,在那里你可以了解到更多的最新技术,并且可以把自己在软件开发的过程中所遇到的技术难题发表到论坛,寻求论坛里的技术达人帮助你解决;商业论坛主要是有著名的商业公司建立的,里面可以了解到这个公司所生产商品的详细介绍和最新商品的发布,在那里,你可以找到自己喜欢的商品具体信息,和把自己日常中所使用的商品所出现的问题进行解决;小型局部论坛主要有人们自己建立,便于和网友交流,在上面可以分享自己生活所遇到的点点滴滴;业余论坛主要是网友利用可以免费使用的服务器空间建立起一个供少部分的专业人士交流信息的平台;新闻论坛主要全国各大新闻媒体所建立起来的,在那里可以找到很多的新闻信息和时事的评论。所以论坛在全国的发展是非常迅速的,它给人们提供一个更加广泛的信息交流空间。 1.1.2 开发本系统的意义现在在网上能够找到很多的论坛,当中很多都很有特点,为了开发好这个系统,我在网上找了很多的校园论坛,了解校园论坛所要实现的具体功能,对于这次开发的校园论坛系统,我在网上参考了很多的资料,这开阔了我的眼界,增加了我的见识,对我的技术也起到了增强的效果,参考资料的同时,我自己学习的能力也得到了加强,这个校园可以让很多同一个学校的学生可以进行交流,并且可以让其他学校的学生了解不同学校的信息,同时可以把自己心中的疑问或困难发到论坛中找自己的有经验的学长和老师进行解答,使我们的大学生活更加的遍历,可以及时的了解到学校最新的规定,帮助我们在学校遇到问题时少走很多的弯路,还可以把自己对本学校的建议发到论坛上,可以让大家进行讨论,最后有可能被学校采纳,为学校的建设做出自己的贡献。总之,它可以使我们之间的交流更加的容易,我们所遇到的问题能够更加快速的解决。1.2 关于本系统1.2.1 本系统的开发目标本系统主要实现以下功能:1.普通用户可以注册,登录,查看个人信息,发表帖子和回复帖子。2.管理员可以查看所有的用户,板块和帖子。可以对用户及板块信息进行修改。可以对帖子进行删除。1.2.2 本系统的开发环境操作系统:Windows7开发工具:MyEclipse2013数据库:MySQLWeb服务器:tomcat6.041第二章 系统开发环境及技术分析2.1 系统开发环境分析2.1.1 开发工具 MyEclipseMyEclipse其实是在eclipse的基础上加上一个插件形成的工具,它是一个功能非常强大的开发工具,它可以对各种框架进行很好的支持,利用它我们可以完成对企业级应用的开发,对数据库的开发,MyEclipse对各种代码都提供了很好的支持,可以利用它进行代码的编写,代码的调试,功能的测试等,利用它还可以将应用程序发布到web服务器上,利用它可以提高开发的效率。2.1.2 web服务器 tomcatTomcat是一个很常用的,开源的,免费的web应用程序的服务器。这个服务器是完全免费的,Tomcat在使用起来也是非常的方便,把应用程序写好之后,进行打包,然后再将这个包放到webapps文件夹下,Tomcat会自动进行解压,我们只需在浏览器输入请求就可以访问应用程序了。本系统运用的是MyEclipse作为开发工具,所以直接就在MyEclipse里面使用Tomcat,只需要在MyEclipse里面添加一个外部的Tomcat服务器,将项目发布到Tomcat中即可。2.1.3 数据库 MySQL数据库实际上就是用来存储程序中需要的重要的数据信息,存储数据并不能像存储文件那样简单的放到磁盘就可以了,因为程序中的数据之间是有一定的关系的,如果用程序实现这些数据之间的关系,会增加程序的负担,所以需要有专门的软件和设计来实现数据的存储,由于mysql数据库是一个开源的数据库,并且它能够提供快速安全可靠的数据存储方案,所以本系统选择使用免费开发的mysql数据库。2.1.4 操作系统 Windows7微软公司在中国占用相当大的市场份额,其winxp更是所有系统中的经典,但是微软公司已经不再为其提供何种更新服务,无法满足今后在使用过程中的安全性。所以本校园论坛网站是在win7操作系统下运行的。Win7的优势是很明显的,国内很多用户的系统也都已经更新该版本。所使用的各种开发软件也有很多都是微软设计的,是用微软的操作系统更是为开发提供了方便。因此在本次设计中,网站的运行环境选为win7。2.2 系统开发技术分析2.2.1 J2EE简单介绍Java是一种使用率最高的,以跨平台和面向对象为特征的编程语言。Java的面向对象的思想就是,当对一个事物进行描述时,把他看作是一个整体,这个整体有自己的属性和行为。Java语言的跨平台特征,由于Java程序是在Java虚拟机上运行的,所以只要是系统里有Java虚拟机就可以运行Java应用程序。为了适应不同的需求,Java按照应用范围划分为了3个不同的版本即javaSE,javaEE,javaME。javaEE是企业版,主要用于开发企业级的分布式的网络应用程序。2.2.2 B/S结构的分析随着互联网技术快速断发展,原始的单机软件已经不能满足用户的需求,所以需要开发动态的可交互的网络应用,这样的网络应用可分为两种,C/S和B/S结构。C/S就是客户端/服务器端,在这种结构中,客户需要下载客户端程序,在程序每次更新时,客户端又得下载更新的内容,难于升级或改进,可扩展性不理想。而B/S(浏览器/服务器)只需要客户端任意一种浏览器,就可以访问服务,不需要下载程序,更新时也不需要客户端的参与。列外基于J2EE多层体系结构,B/S结构的网络应用,将整个网络系统划分为不同的层次结构,是系统的开发,运行和维护变得极为方便。2.2.3 MVC设计模式分析MVC是一种设计模式。它将一整个应用程序认为的划分为三个层次,分别为模型层,就是用来分装业务中的数据对象的,显示层,就是为用户提供数据展示的界面,控制层,就是负责控制程序运作的。通过这种方式,可以将应用程序划分成不同层次或者模块。在程序的开发阶段,可以更好的将应用程序进行分模块地实现。在程序的运行阶段,可以根据后台返回的不同的数据结果进行视图的展示。在程序的后期维护,由于程序的各模块分离,维护升级时可以专注于某个特定的模块进行修改和升级。MVC由模型、视图和控制器三层体系结构组成,这三个组将相互分离,有相互联系,实现了低耦合,高内聚的特点。这样可以减少开发程序所需要的时间,另外,在程序的后期维护,由于程序的各模块分离,维护升级时可以专注于某个特定的模块进行修改和升级。由于MVC设计模式具有以上等诸多的优点,所以本系统决定采用MVC模式进行应用程序的开发与实现。2.2.4 SSH框架技术分析框架(Framework)是就是一些别人开发好的可以重复使用的Java程序,它对外提供接口,应用程序直接调用接口就可以实现功能,而不需要考虑程序内部的具体实现方法。利用框架进行开发,能快速的实现应用程序所需的功能,节省试讲提高效率。1. Struts是一种基于网络技术的web框架,它是对MVC设计模式的实现。Struts的工作流程就是,拦截用户的所有请求,根据请求找到相应的处理方法,然后再返回处理后的结果,最后根据xml文件里的配置,返回相应的视图。2. Spring框架是也是一个web框架,它能够为企业级的应用程序的开发提供一种很好的解决办法,为应用程序的开发节省了非常多的宝贵的时间。它的主要作用就是,能够很好地管理应用程序中类的实例化,以及类与类之间的各种依赖关系。它的两个主要的核心技术就是,依赖注入和控制反转。控制反转: 它把业务对象类的创建过程,以及维护对象之间的关系的任务交给spring容器进行管理,而程序本身不再维护,spring框架就相当于一个容器,把程序中的所有对象都放入其中,spring进行管理,而每个对象不需要穿件对象,不需要考虑对象之间的关系,统统交给外面的容器进行管理。面向切面编程是一种编程思想,它把整个系统划分成一个个的层面,提取层面的可重用的方法,可以在其他切面直接使用而不用增加代码量。3. hibernate 是一个对象关系映射框架,对象就是业务程序里的类,关系就是数据库中的一张张的表,这种映射关系就是将业务程序里的类,对应到数据库中的表中的一条条数据记录。它是程序的持久层,开发的时候还需要定义一个对象数据映射文件即可。一般情况下,一个业务程序中的一个类就是数据库中的一张表,程序运行过程中创建的每一个类的实例就是表中的一条数据,类的每个属性对应表的列,对应关系如表2-1所示: 表2-1 hibernate对象模型与关系模型对应表面向对象程序关系数据库类表对象记录属性列第三章 大学校园论坛系统系统需求分析3.1 需求分析3.1.1 功能需求分析本系统主要用于在校大学生及老师之间的交流,共同探讨一些国家时事问题,发布学校的最新动态以及为需要帮助的同学提供更好的帮助,同学老师之间可以分享学习资料,增加感情交流,发表自己最一些时事的看法或对学校提供一些对学校有利的建议,加深同学们之间的友谊,扩展同学们的知识和兴趣。所以在功能上的主要需求包括,展示话题的功能,发表话题的功能和回复话题的功能。而对于管理员来说应该有管理人员及话题的功能。3.1.2 安全性分析本系统主要是一个开放,公平,简单的交流平台,不会涉及钱财等一些其他重要的东西,所以在安全性方面,只需要在发帖和回帖时对用户做一些简单的权限控制即可。3.2 论坛系统可行性分析3.2.1 技术可行性分析 大学校园论坛系统使用MyEclipse作为开发工具。数据库采用MySql数据库,并利用Navicat for MySQL作为数据库的辅助工具进行开发。就开发工具来说是可行的。在我查阅很多关于本网站设计的资料和我的理性分析以及具体判断之后,最后笔者决定使用这些很有用的几个框架,笔者设计的大学校园论坛系统的设计就是采用SSH三大框架并且对其加以整合开发。此外本校园论坛网站采用了当前十分流行的前台UI技术,比如bootstrap ,easyUI等。所以开发一个用于在校大学生和老师之间的交流平台,实现一个简单,实用,可扩展,可维护的大学校园论坛系统,是完全可以实现。因此,就开发本系统的技术而言是可行的。3.2.2 经济可行性分析大学校园论坛系统,作为这次我的毕业设计题目,主要是以学习研究为主要目的,投入成本比较小。然而本系统带来的效益是巨大的,它能够实现在校大学生及老师之间的交流,共同探讨一些国家时事问题,发布学校的最新动态以及为需要帮助的同学提供更好的帮助,同学老师之间可以分享学校资料,增加感情交流,发表自己最一些时事的看法或对学校提供一些对学校有利的建议,加深同学们之间的友谊,扩展同学们的知识和兴趣。美好校园的建设需要大家的共同努力,因此校园论坛的存在就显得很重要了,可以帮助同学之间友好交流。此外,一个论文的完成是需要大量时间与大量精力的,过程中我遇到了很多问题,在查阅相关资料之后都得到了解决。所使用的编辑软件都是开源免费的,在经济上是可行的,不需要在使用开发软件过程中另外付费。学校的图书馆也拥有大量书籍,可以让我阅读。极大的减少了开发过程中的开支。3.2.3 使用可行性分析由于本系统使用的是bootstrap实现的前台界面,呈现出来的是,功能全面使用简单易懂,对于普通用户,本系统做到了简单明了,所见即所得,所以不存在使用难度。对于管理员来说,后台界面采用的也是简洁EasyUI,每个模块的结构也基本相同,所以对于管理来说对本系统进行管理也比较容易。因此,大学校园论坛系统在使用上是可行的。3.3 系统功能模块及用例分析 本文研究的论坛系统按功能划分,主要由五大模块组成,在导师的指导下,均由本人设计并编码完成。系统的功能模块划分如图3-1所示:大学校园论坛系统出错处理模块板块管理模块用户管理模块网站留言模块帖子管理模块图3-1 系统模块功能3.3.1 系统模块主要功能分析1.帖子管理模块 分页显示系统内所有的帖子信息,并提供了帖子的删除的功能,此模块只对管理员提供接口。2.板块管理模块 分页显示所有的帖子的所属板块,以及板块下的发布的帖子的总数,用户发布帖子时,需要选择的帖子的所属板块,以及前台分类展示时的过滤条件,都是在此统一管理,在这里可以进行添加,修改,删除,此模块只对管理员提供接口。3.用户管理模块 分页显示所有的用户信息,包括管理员和普通用户,可以进行人员的添加,人员信息的修改,及人员的删除,此模块只对管理员提供接口。4.网站留言模块 分页展示本系统内的所有帖子,并且可以通过板块进行条件筛选,也可以通过查询功能,查询指定信息的帖子。用户在当需要查阅帖子具体内容的时候,点击相关帖子标题就可以看到该帖子的详细内容与其他用户的回复以及代表个人观点的留言,并且登录之后的该用户还可以发表及回复,当然这些功能只有在登录的状态下才可以使用。5.出错处理模块 对系统的所有的404,500等错误做统一的处理,提高用户体验度。 3.3.2 系统主要参与者分析该系统所涉及到的重要参与者如下:1.普通用户 职责:查看帖子,发表帖子,回复帖子。 2.管理员 职责:对用户进行管理,对板块进行管理。3.3.3 系统主要用例分析该管理系统所涉及到的重要用例如下:1.帖子浏览 无论是用户还是游客在进入论坛网站后都可以查看帖子的所有列表,并且帖子列表是按页分开的。2.帖子阅读 在帖子浏览页面,可通过点击标题进行帖子的阅读。3.帖子查询 用户对帖子进行查询等操作。4.帖子删除 管理员可以对帖子进行删除。5.用户管理 管理员可以对用户进行各种管理,可以对用户信息维护修改。6.登录操作 用户输入正确的账号密码之后才能成功登陆本网站。7.注销操作 所有用户及管理员可通过注销退出系统。系统的主要用例如图3-2所示:帖子管理帖子浏览帖子阅读 板块管理登录普通用户员 系统管理员用户管理注销图3-2 系统主要用例图第四章 大学校园论坛系统的设计4.1系统架构设计根据软件架构设计基本原理和大学校园论坛系统的业务需求情况,和本文之前的论述,本系统使用由SSH三大框架整合开发。SSH三大框架整合开发,能够开发一个结构简单,功能强大的web应用程序,并且提供了功能非常丰富的可以重复使用组件,使用三大框架能够降低程序代码中的耦合度,不论是对于前期的开发分工有利,而且更重要的是有利于以后的系统维护和功能升级,前面所介绍的好处是可以非常人性化的为用户提供各种服务。经过研究,本文将该系统分为四层,分别是:Web层、业务层、持久层、数据层。每一层都有其明确的分工与责任,与其他层相分离,层间通过一个个接口传递消息进行交互。该系统的架构图如图4-1所示:数据层MySqlWeb层Struts持久层Hibernate业务层Spring客户端数据库图4-1 大学校园论坛系统架构图4.1.1 系统web层详细设计本系统的Web层由JSP配合Struts实现,以actionfrom充当MVC模型中的Model层,以JSP及bootstrap和EasyUI充当View层,Struts框架的核心控制器dispatcher充当Controller层。综上所述,其主要功能是:通过面向对象思想,采用MVC模式,管理用户的请求,提供一个控制器将页面请求以消息的形式发给其它层处理;提供业务模型数据以供显示,对输入内容的简单验证。4.1.2 系统业务层详细设计业务层设计 大学校园论坛系统的业务层运用Spring框架程序业务逻辑的管理的,通过采用spring的依赖注入和面向切面编程的两大核心技术,降低了程序之间的关联度和依赖度,增强了程序的可维护性和扩展性。其主要功能是:统一管理事务;管理业务层对象间的依赖关系;使Web层与持久层相分离,很好地起到了桥梁的作用,向Web层提供具体业务的实现类。4.1.3 系统持久层详细设计持久层设计 大学校园论坛系统的持久层借助Hibernate框架,hibernate是一种数据操作框架,它能够把原来直接操作数据库表的实现模式,变成为操作和数据库表对应的业务对象,这样程序开发人员就不需要关心SQL语句的编写,而直接对类进行操作,提高了开发效率。另外,将关系型数据库表映射为业务对象类,也是一种面向对象的思想。其主要功能是:将关系型数据库表与类一一映射,通过简易的HQL语句轻松实现数据库访问。在这个模块,本系统主要是这样实现的,首先将相应的工具包的使用封装到自己编写的基本处理类当中去,然后让其他的业务程序中的业务操作类继承我们的基类即可。4.1.4 系统架构整体结构设计在详细设计阶段,首先基于SSH的编程思想,对系统的整体层次进行了划分,以及分装,本系统采用的是action层,domain层,service层,三层进行功能的分离和封装。并没有传统的DAO层,而是将DAO层的数据操作功能封装到了一个基础类当中,由基础类实现DAO层的所有数据操作功能,再由service层进行调用,这样不用每一个service方法都编写一个DAO方法,减少了代码的编写。根据需求分析,本文按照系统的不同功能,将其划分为不同的组件模块,以模块为单位进行开发。整个系统的结构如图4-2所示:客户端Web层 Struts平台管理组件(用户管理,板块管理,帖子管理)Web层 Struts前台服务组件(帖子浏览,帖子发布,帖子回复)业务层 Spring逻辑组件(帖子管理,板块管理,用户管理,登录注销管理)持久层 Hibernate数据访问组件数据层 MySql数据库图4-2 系统总体结构图4.2 系统主要用例设计用例是系统内各种角色间通过信息的交互而形成的功能模块。下面将对本系统主要涉及到的用例进行分析与说明。1.用例一:系统登录参与者:所有用户及管理员描述:在帖子浏览和回复页面有登录的接口,输入登录名和密码,验证通过后进入本系统。经典事件发生过程:用例起始于用户要发布一个新的帖子或者要回复一个帖子是,struts过滤器过滤用户的请求,判断用户是否登录,如果未登录则弹出登录框要求用户进行登录,在用户输完登录信息之后,对用户进行合法性判断,之后对用户的角色进行判断,如果是普通用户则跳转到帖子浏览页面或者帖子阅读页面,并且开放帖子发布功能或者帖子回复功能。如果是管理员则直接跳转到后台管理界面。2.用例二:板块管理参与者:所有管理员描述:管理员登录后,可以对板块信息进行增加,修改,删除等操作。经典事件发生过程:用例起始于管理员成功登录后查看板块信息列表,对板块信息进行增加,修改,删除的操作,请求通过ajax方式进行提交,struts再将请求发送给对应的action方法进行处理并返回相应的信息。3.用例三:用户管理参与者:所有管理员描述:管理员可以查询到全部的用户信息,并且可以修改每一位用户的信息。经典事件发生过程:情况下始于管理员管理用户信息,管理员可以添加一个用户,把相关信息以及角色,可以修改现有的用户信息和人物,您可以删除一个用户。4.用例四:帖子管理参与者:所有管理员描述:管理员可以对帖子进行删除。经典事件发生过程:用例起始于超级管理员欲对违反规定的帖子进行清理。5.用例五:帖子浏览参与者:所有访客描述:所有访客可以对帖子进行浏览。经典事件发生过程:用例起始于访客对本系统内所有的帖子进行浏览,可以选择查看某一板块下面的所有帖子,也可以通过搜索功能进行帖子的快速定位。6.用例六:帖子阅读参与者:所有访客描述:所有访客对帖子内容的查看。经典事件发生过程:用例起始于访客对感兴趣的帖子的内容进行查看,在帖子浏览页面,通过点击帖子的标题即可进入帖子详细内容的展示页面,并且可以看到所有的回复信息列表。7.用例七:帖子回复参与者:所有用户经典事件发生过程:用例起始于用户在阅读帖子的详细内容时,可以在帖子下方发表回复。4.3 数据库设计数据库实际上就是用来存储程序中需要的重要的数据信息,存储数据并不能像存储文件那样简单的放到磁盘就可以了,因为程序中的数据之间是有一定的关系的,如果用程序实现这些数据之间的关系,会增加程序的负担,所以需要有专门的软件和设计来实现数据的存储,在这里本系选择着使用免费开发的mysql数据库。因为本系统的数据之间存在着特定的关联,所以,对于整个大学校园论坛系统来说,数据库的设计是相当关键的。4.3.1 数据库概念结构设计通过上面对大学校园论坛系统各业务模块需求的分析,将整个系统划分为用户,板块,主题,帖子,回帖等数据实体。4.3.2 数据库逻辑结构设计用户(ID,登录名,密码,姓名,角色,性别,联系方式,邮箱,描述)板块(ID,板块名称,板块描述,最新的帖子)主题(ID,标题,内容,发表时间,IP地址,作者,最新更新时间,所属板块,最后回复作者)回帖(ID,标题,内容,发表时间,IP地址,作者,所属帖子)ID为主键。4.3.3 数据库表结构设计仔细考虑后,决定选择这个系统简单的MySQL数据库。根据上面的,系统的概念数据模型的设计,可以画一个特定的数据库中的表的设计。下面给出了系统主要功能模块的数据库表的详细结构。表4-1列出了库中用户表的所有字段和相关信息,并分别进行了注释,用户表是系统的主表之一,记录了每一位用户的基础信息。表4-1 用户表 No.数据名称数据类型默认值主键外键备注1idintY主键2Zhanghaovarchar(32)账号3passwoedvarchar(32)密码4namevarchar(32)姓名5rolevarchar(32)角色6gendervarchar(32)性别7Dianhuahaomavarchar(32)联系方式8emailvarchar(32)邮箱9descriptionvarchar(32)描述表4-2列出了库中板块表的所有字段和相关信息,并分别进行了注释,板块表是记录帖子板块信息的重要表格。表4-2 板块表No.数据名称数据类型默认值主键外键备注1idintY主键2namevarchar(32)板块名3Bankuaimiaoshuvarchar(32)板块描述
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年幼儿园下期工作方案
- 邮政金融知识培训课件
- 三亚学院《设计初步创作思维》2023-2024学年第二学期期末试卷
- 山东省济南市部分区县2025届高三二诊测试(物理试题理)试题含解析
- 湖北远安栖凤联盟2025届五下数学期末复习检测试题含答案
- 宿迁职业技术学院《现代商务管理学》2023-2024学年第二学期期末试卷
- 湖北省天门天宜国际校2025届初三下学期第四次质量检测试题英语试题含答案
- 2025年贵州省黔东南州凯里六中学初三下学期9月初态考试英语试题含答案
- 内蒙古经贸外语职业学院《流体力学土建类》2023-2024学年第一学期期末试卷
- 长春师范高等专科学校《医学信息检索与利用》2023-2024学年第一学期期末试卷
- 2023-2024学年河南省安阳市殷都区八年级(下)期末数学试卷(含答案)
- GB/T 35607-2024绿色产品评价家具
- CJJT153-2010 城镇燃气标志标准
- 急救药品、物品交接记录
- QBT 2262-1996 皮革工业术语
- 课件:件杂货船舶理货操作程序(改)讲解
- 质量通病防治指引(二次结构)
- 2024年公务员考试常识题400道及答案【新】
- 2024年辅警招聘考试试题库含完整答案(各地真题)
- 房屋设计自学教程
- 【真题】2023年淮安市中考道德与法治试卷(含答案解析)
评论
0/150
提交评论