基于SpringBoot 的技术论坛系统设计和实现.doc
《基于SpringBoot 的技术论坛系统设计和实现.doc》由会员分享,可在线阅读,更多相关《基于SpringBoot 的技术论坛系统设计和实现.doc(47页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、摘要中国的互联网科技蓬勃向上,网友收集信息便利快捷,而且还向人们在舞台上充分表达自己,而论坛有较强的交互性,有高层次且具有个性化的需求。网络论坛发展的功能发展也随着互联网的更新而在不断的变化着,论坛的综合型逐渐变为现在的专业型发展, 所以需要在方便快捷的网络沟通背景下,建立一个属于技术小白和大牛之间的交流且简单干净的全民技术交流天地,是具有重要意义的。本系统采用SpringBoot框架进行设计和实现,而SpringBoot不需要XML配置且可以快速的开发,后台开发主要使用Tomcat、MySQL、Spring Data JPA、ElasticSearch、SpringSecurity框架,前端
2、主要使用Thymeleaf、Bootstrap等技术来展示页面,并使用了开源性的Eclipse(JavaEE)集成开发工具来实现开发工作。本系统由用户和管理员组成,实现技术论坛系统的功能模块中的用户模块、帖子模块、评论模块、点赞模块、分类模块、标签模块、首页搜索模块合计8个功能模块。本文将会介绍如何基于SpringBoot技术设计和实现技术论坛系统,并实现技术论坛系统的基础功能。关键词: SpringBoot 技术论坛 设计与实现AbstractChinas Internet technology is booming, netizens collect information conveni
3、ently and quickly, and also fully express themselves to people on the stage, while the forum has strong interaction, high-level and personalized needs. The function development of the Internet forum is changing with the update of the Internet. The comprehensive type of the forum is gradually changin
4、g into the professional development. Therefore, it is of great significance to establish a simple and clean technology exchange world for the whole people, which belongs to the communication between technical Xiaobai and Daniel, in the context of convenient and quick network communication.The system
5、 is designed and implemented with the spring boot framework, which does not need XML configuration and can be developed quickly, The background development mainly uses tomcat, mysql, spring data JPA, elasticsearch, spring security framework, the front end mainly uses technologies such as thymeleaf,
6、bootstrap to display the page, and uses the open-source eclipse (Java EE) integrated development tool to achieve the development work.The system is composed of users and administrators, and realizes 8 function modules in the function module of the technical forum system, including user module, post
7、module, comment module, likes module, classification module, label module and home page search module.This paper will introduce how to design and implement the technology forum system based on spring boot technology, and realize the basic functions of the technology forum system.Key words: SpringBoo
8、t framework Technology Forum Design and Implementation广东东软学院本科毕业设计(论文)目 录1. 绪论11.1研究背景及意义11.2研究现状11.3存在问题11.4创新思路11.5本文的内容和组织结构21.5本章小结22. 相关平台和技术介绍32.1 系统平台32.1.1 Eclipse(JavaEE)32.1.2 MySQL数据库32.1.3 Gradle构建工具32.2 相关技术介绍32.2.1 SpringBoot框架32.2.2 ElasticSearch引擎32.2.3 Spring Data JPA技术32.2.4 Spring
9、_Security安全框架32.2.5 Thymeleaf模板引擎32.2.6 Bootstrap框架32.3 本章小结43. 技术论坛系统需求分析53.1目标和任务53.2界面需求分析53.3功能需求分析53.4性能需求分析154. 技术论坛系统的系统设计164.1系统结构设计164.2功能架构设计164.3功能详细设计164.4数据库设计254.5本章小结285. 系统实现295.1系统实现架构295.2系统开发环境和运行环境配置305.3用户管理305.4安全设置315.5帖子管理325.6评论管理325.7点赞管理335.8分类管理335.9标签管理335.10首页搜索345.11本章
10、小结346.系统测试356.1测试意义和目的356.2测试用例356.3测试结论406.4本章小结407. 结论41参考文献42致谢431. 绪论1.1研究背景及意义中国的互联网科技蓬勃向上,网友收集信息便利快捷,而且还向人们在舞台上充分表达自己,而论坛拥护强大的交互性,使用户可以对感兴趣的相关话题的即时性互动,比如咨询疑惑,分享经验,发布话题等。在生活质量的不断提高,用户对质量高、级别高、性价比高、体验好的事物要求不断提升。网络论坛发展也在不断的进步,功能发展也随着互联网的更新而在不断的变化着,论坛的综合型逐渐变为现在的专业型发展,所以需要在方便快捷的网络沟通背景下,建立一个属于技术小白和大
11、牛之间的交流且简单干净的全民技术交流天地,是具有重要意义的。1.2研究现状网络社区门槛低,而我国的传媒体系和互动格局保证了网络互动性网站的繁荣。目前我国人口基数大,科技发展迅速,基本上每个成年人拥有一台智能手机或一台电脑,这也奠定了中国网民多,互动性网站发展空间大,沟通桥梁需求也大,而现在各式各样的网络互动性软件app更是数不胜数。针对论坛模块化,专业化,这样的群体数比同类型网站却少之又少,针对特定用户群体,可以在社会生活的方方面面得到体现,同时会对人们的生活习惯产生久而久之的影响。同时,技术专业性也可以增长个人的见识;论坛发布信息,发表观点,共享资源,技术大牛对于技术性一眼就可以进行及时过滤
12、,不但提高了信息交流的速度,达到及时交互,不消耗社会资源,比传统信息交流降低了成本,也扩大了信息交流范围,咨询解决问题的几率也大大增加。1.3存在问题现在广告模块可能是大部分网站的一个盈利点,但是一个产品正在谋求发展壮大,广告的植入不仅不会起到盈利的作用,反而会影响用户的使用,引起用户的厌恶。1.4创新思路(1)技术创新在web应用开发过程中,实现用户与服务器交互的Spring Boot基本的技术架构,结合前端模版Thymeleaf,数据层Spring Data JPA,搜索引擎ElasticSearch和安全管理Spring Security等技术的技术论坛系统。(2)理论创新根据目前网络技
13、术论坛的趋势和现状,重新对技术论坛中的要素和交互观念剖析,提出网络技术论坛中用户需要的高质量,高层次且具有个性化的需求。开发者也需要进行深度解析,尽量提升用户感官体验,建构用户需求的角色模型,完成对仍有缺憾的引导技术论坛交互需求设计。1.5本文的内容本文将基于技术论坛系统,结合目前流行博客的个性化的特点,实现用户交互化设计和信息及时搜索筛选等特点进行设计和实现。1.5本章小结综上所述,通过对比研究现状,可以看出一个技术论坛系统的可塑性对于需求群体是很高的,意味着在技术论坛系统的设计在未来会有更好的期许。2. 相关平台和技术介绍2.1 系统平台2.1.1 Eclipse(JavaEE)Eclip
14、se(JavaEE)是一个应用java技术开源性的平台,它比其他的开发软件更加灵活,也被广大开发者所使用。2.1.2 MySQL数据库MySQL数据库是一款花费价格不高、易于配置和维护且软件体积小的开源性的关系型数据库管理系统。2.1.3 Gradle构建工具Gradle是一款应用java技术且能够自动构建项目的工具。2.2 相关技术介绍2.2.1 SpringBoot框架在Spring传统的开发平台过程中,我们会遇到很多繁琐的XML配置,还有管理很复杂的依赖关系等等。而SpringBoot应用了大多数的第三方库,不需再配置XML,一些配置代码就可以实现,让开发程序变得更简单。2.2.2 El
15、asticSearch引擎Elasticsearch是一个运用Java技术进行检索关键字进行搜索和分析的引擎。2.2.3 Spring Data JPA技术Spring Data JPA调用自定义接口,它可以自动帮你完成在数据库建表和完成其他没有完成的工作,所以基于使用Spring数据访问技术栈的应用程序更容易构建出来。2.2.4 Spring_Security安全框架Spring Security是一个运用Spring技术对开发的项目进行安全性受权和识别的框架。2.2.5 Thymeleaf模板引擎Thymeleaf应用Java技术把各个页面相同的地方做一个提取,根据不同的数据做一个渲染,渲
16、染的数据会从相同页面变成不同的页面组成,所以Thymeleaf技术对于Spring Boot 非常友好。2.2.6 Bootstrap框架Bootstrap是具有众多的web组件的前端开发框架,可以快速构建一个功能完善的Web项目。2.3 本章小结本章介绍了开发技术论坛系统时候所采用的平台和技术,增加开发时的技术背景的知识铺垫和技术支持。3. 技术论坛系统需求分析3.1目标和任务本课题的目的是为了用户快速地解决问题、增加见识,同时也是为了是针对提出网络技术论坛中用户需要的高质量、高层次且具有技术论坛系统的需求现状,设计的成果风格应属简约、轻量且具有类似博客个性化用户风格,而技术论坛主要是为了用
17、户快速地解决问题、增加见识,而需要快速地对论坛技术帖主的帖子内容进行筛查、甄别,同时需要交互性要强,例如:点赞,评论等。所以根据以上需求分析出需求特点是设计和实现技术论坛系统的首要任务。3.2界面需求分析系统界面是用户接触的第一印象,设计风格设计和实现要大气、专业且没有其他与页面无关内容,其次用户所需的数据需求要合理安排显示和对于一些技术标签、类别要合理区分,最后网页设计的字体要规范、配色要舒适。3.3功能需求分析本节将会按照3.1节的目的和任务,着重于阐述技术论坛系统的主要功能模块的需求,并且通过模块功能概述图、用户和管理者功能用例图两方面来进行介绍用户需求,确定需求后可以更好的进行系统的设
18、计和实现。(1)用户模块该模块包括了六个子功能:注册功能、登录功能、搜索用户功能、增加用户功能、删除用户功能、修改用户功能。用户模块是确定技术论坛系统用户的基础,而在系统中管理员是拥有最高权限的用户,负责整个技术论坛里的管理用户工作,可以将在系统中违反技术论坛相关规定的用户进行封号处理,这样可以最大程度的约束用户在系统的行为,所以管理员拥有该模块下除了注册功能以外的五个子功能的功能。而普通用户拥有该模块下的两个子功能,分别为注册功能、登录功能。其中,图3-1-1、图3-1-2分别为用户模块的功能概述图、用户和管理者功能用例图。图3-1-1 用户模块功能概述图图3-1-2 用户模块的用户和管理者
19、功能用例图现以下对其子功能进行详细的叙述和说明。注册功能:用户想使用帖主等技术论坛内的功能需要用户注册,用户可以在注册页面填写必要的个人信息进行注册,同时注册信息是会加载在帖子作者信息中,而注册成功后会获得自己的账号和密码且用其的账号和密码进行用户登录,即可获得完全的用户权限功能。登录功能:登录是检验用户的账号和密码,以及登陆成功后获得技术帖主信息更改、发表帖子等一系列系统权限的凭证,登录成功后则系统将自动跳转到系统技术论坛主页;而当用户处于未登录系统状态时,只能操作基础的技术帖子浏览和搜索以及浏览技术帖信息和帖主信息等不需要登录的功能。增加用户功能:管理员在管理员页面对技术论坛的用户进行增加
20、用户,管理员对个人信息重新进行赋予且通过系统验证以后填写必要的个人信息和赋予该用户(帖主或管理员)具体的权限进行系统用户添加,通过系统验证以后,该用户可以行使其权限的所有功能。修改用户功能:管理员在管理用户页内对重新更新技术论坛相关的用户个人信息,通过系统验证以后,该用户可以行使其更新后权限的所有功能。删除用户功能:管理员在管理用户页面删除用户,是对违反技术论坛相关规定的用户的账号信息进行删除,因为用户缺少账号,用户将无法使用账号密码进行登录。搜索用户功能:管理员在管理员页面搜索用户,是对技术论坛相关的用户快速的进行检索,检索成功后则可以对具体用户进行操作,若因为输入的行为不规范导致搜索失败,
21、则显示管理用户的必要属性,值为空白。(2)帖子模块该模块包括了八个子功能:个人资料设置功能、发表帖子功能、编辑帖子功能、删除帖子功能、模糊查询功能、最热排序功能、最新排序功能和阅读量统计功能。帖子模块是一个对所有用户对技术帖子进行发表、编辑、删除和个人喜好对技术帖子进行筛选、剔除以及阅读量多少是对技术帖子质量的肯定的个性化模块,而用户(帖主)和管理员均具有该模块的八个子功能的全部功能,即帖主或管理员都可以管理自己的技术帖子,设置自己的的个人资料和按情况查询自己的技术帖子情况,个人化得到凸显。其中,图3-2-1、图3-2-2分别为帖子模块的功能概述图、用户和管理者功能用例图。 图3-2-1 帖子
22、模块的功能概述图图3-2-2 帖子模块的用户和管理者功能用例图现以下对其子功能进行详细的叙述和说明。个人资料设置功能:个人资料的邮箱展示是针对技术大牛和技术小白之间沟通的桥梁,技术小白可以通过邮箱对技术大牛进行线下询问,以防有时候技术帖主对读者咨询的问题回复不及时等问题。用户可以在个人资料设置页修改账号以外的自己的个人资料,也可以在自己的个人主页内查看到自己的个人资料。发表帖子功能:用户撰写的技术帖子需要明确技术帖标题、技术帖摘要、和技术帖内容且字符要在两个以上才能发布,通过系统验证完成以后,发表后可以查看帖子内容详情。编辑帖子功能:用户须是某篇技术帖子的作者,帖主点击查看该技术帖子的内容详情
23、,可以重新对该技术帖子进行编辑,通过系统验证完成以后,重新显示该技术帖子。删除帖子功能:用户须是某篇技术帖子的作者,帖主点击查看该技术帖子的内容详情,可以对该技术帖子进行删除,通过系统验证完成以后,用户个人主页不会出现该技术帖子。模糊查询功能:用户在个人主页对个人技术帖子标题进行模糊查询,系统完成匹配后对结果显示在个人主页,系统匹配失败则显示空白。个人帖子最热排序功能:用户点击个人主页的“最热”按钮显示用户的所有文章,该功能按照阅读量、评论量和点赞量综合显示最热的技术文章。个人帖子最新排序功能:用户点击个人主页的“最新”按钮显示用户的所有文章且能按照时间逆序进行显示最新的技术文章。阅读量统计功
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于SpringBoot 的技术论坛系统设计和实现 基于 SpringBoot 技术论坛 系统 设计 实现
限制150内