毕业设计—基于Java的贴吧管理系统 (案例分析)

摘 要

随着经济的快速发展,网络已经渗透到人们生活及工作中的各个领域,人们越来越注重利用网络的快捷与准确的特点来完成自己的工作,21世纪已经是属于网络的时代。人们把更多的注意力转移到网络上来,除了购物之外,人们也渐渐地在网络上开始想换个交流。以贴吧为例,它已经成为人们获取信息、发表言论的重要场所。它由贴吧注册用户所发表的大量主题组成。近年来,随着网络的普及完善发展,网上的贴吧也越来越火,因此建设一个好的贴吧显得越来越有必要了。

贴吧的全称是电子布告系统,起初它还只是个公布信息的一种工具,但是随着技术的不断发展,现在的贴吧最终发展成一个信息整合、思想交流、资源共享的电子互动平台。 它可以提供给注册用户一个平台,用户可以通过网路的接入,登录贴吧,在这个平台上发表帖子、阅读帖子、回复帖子等等。本设计主要实现集人性化、高效率、便捷等优点于一身的贴吧管理系统,完成用户管理、贴吧、轮播图管理、公告等功能模块。系统通过浏览器与服务器进行通信,实现数据的交互与变更。只需通过一台电脑,动动手指就可以操作系统,实现数据通信管理。整个系统的设计过程都充分考虑了数据的安全、稳定及可靠等问题,而且操作过程简单。本系统通过科学的管理方式、便捷的服务提高了工作效率,减少了数据存储上的错误和遗漏。

贴吧管理系统使用Java语言,采用基于B/S架构的SpringBoot技术进行开发,使用 MyEclipse编译器编写,数据方面主要采用的是MySQL关系型数据库来作为数据存储媒介,配合MyBatis、Redis等技术完成系统的开发。

关键词:贴吧管理;Java语言;SpringBoot框架;MySQL关系型数据库

Java based Tieba Management System

Abstract

With the rapid development of the economy, the internet has penetrated into various fields of people's lives and work. People are increasingly paying attention to utilizing the fast and accurate characteristics of the internet to complete their work. The 21st century is already an era of the internet. People are shifting more attention to the internet, and in addition to shopping, they are also gradually starting to want to exchange ideas online. Taking Tieba as an example, it has become an important place for people to obtain information and express their opinions. It consists of a large number of topics published by registered users of Tieba. In recent years, with the popularization, improvement, and development of the internet, online post bars have become increasingly popular, so it is increasingly necessary to build a good post bar.

The full name of Tieba is Electronic Announcement System. Initially, it was just a tool for publishing information. However, with the continuous development of technology, Tieba has eventually developed into an electronic interactive platform for information integration, thought exchange, and resource sharing. It can provide a platform for registered users to access the internet, log in to the post bar, publish articles, read articles, reply to articles, and more on this platform. This design mainly implements a post bar management system that combines the advantages of humanization, efficiency, and convenience, completing functional modules such as user management, post bar, rotation chart management, and announcement. The system communicates with the server through a browser to achieve data interaction and changes. You only need to use a computer and move your fingers to operate the system, achieving data communication management. The entire system design process fully considers issues such as data security, stability, and reliability, and the operation process is simple. This system improves work efficiency and reduces errors and omissions in data storage through scientific management and convenient services.

The post bar management system uses Java language, adopts the SpringBoot technology based on B/S architecture for development, and uses the MyEclipse compiler for compilation. In terms of data, it mainly uses MySQL relational database as the data storage medium, and completes the system development with MyBatis, Redis and other technologies.

Key words:Tieba management; Java language; SpringBoot framework; MySQL relational database

目  录

第1章 绪论

1.1 研究背景与意义

1.2 研究现状

1.3 本文的组织结构

第2章 相关技术介绍

2.1 Java语言与JDK开发环境

2.2 B/S结构

2.3 Springboot框架

2.4 MyEclipse开发工具

2.5 tomcat服务器

2.6 MySQL数据库

第3章 系统分析

3.1 可行性分析

3.1.1 技术可行性分析

3.1.2 经济可行性分析

3.1.3 操作可行性分析

3.2 功能需求分析

3.3 非功能需求分析

3.4 数据流程分析

第4章 系统设计

4.1 系统架构设计

4.2 系统功能结构

4.3 功能模块设计

4.4 数据库设计

4.4.1 数据需求分析

4.4.2 数据表

第5章 系统实现

5.1 登录模块的实现

5.2 注册模块的实现

5.3 用户子系统模块的实现

5.3.1 个人资料模块

5.3.2 用户首页模块

5.3.3 贴吧帖子管理模块

5.3.4 评论模块

5.4 管理员子系统模块的实现

5.4.1 用户管理模块

5.4.2 贴吧管理模块

5.4.3 公告管理模块

第6章 系统测试

6.1 测试目的

6.2 测试过程

6.3 测试结果

第7章 总结与展望

参考文献

致谢

第1章 绪论

1.1 研究背景与意义

随着生活方式的转变和社会动作的加快,现代人交友的方式和途径也在大大增加,比如网站、贴吧。尤其是网络越来越多的融入我们的生活,网上交友这种新鲜快捷的交友贴吧网站方式也得到了年轻人的认同,传统贴吧网站交友方式受到越来越多的挑战,网上交友大大扩展了我们的交友圈,在天大地大的地球村寻找一份莫名的浪漫,可谓新异十足。 

贴吧是在1992年底随着国际互联网的开始流行而迅速发展起来的。互联网的产生
使得以前只能在本地访问的贴吧可以被全世界随意访问,这大大加大了人们对它的兴趣。在贴吧上大家可以对一个共同感兴趣的问题进行讨论,自由地发表自己的意见与观
点,并且能直接与其他的人进行沟通。从新闻、学习到娱乐、体育,从文字到视频、音频,贴吧汇集了各种形式、内容的网络资源。同时它具有不同的用户类型,权限不同贴吧正以一种全新的姿态水到这个新的世纪,它以文字为主要的沟通方式,为网友提供了不受地理位置限制的交流空问。它己经成为人与人之间交流的一种形式它提供一个相五交流、学习的互动平台,能够将分散的信息和分散的智慧都集中调动起水,能使得复杂的事情简单化。

随着网络的普及,现在很多人都能够上网,所以基于网络的贴吧也是各种信息资源
组合的场所,可以很好的为学习者、粉丝、志同道合的人提供自由的贴吧。贴吧参
与者可以围绕某个关键词或者话题,通过发表、回复话题的方式进行互动,形成了种以关键词为中心的交流方式。同时贴吧的内容也是越来越丰富,花样繁多,贴吧也由此深受广大网民的喜爱,因此不少商业网站对贴吧也重视起来,提供与网民交流的平台,同时在线技术支持也在贴吧中开展起来。同样地,也无从知道交谈的对方的真实社会身份。这样,参与贴吧的人可以处于一个平等的位置与其他人进行任何话题的交流。这对于现有的所有其他交流方式来说是不可能的。

1.2 研究现状

贴吧系统是指一种基于BBS(Bulletin Board System)的在线社区系统,主要用于用户之间的交流和信息分享。下面是贴吧系统研究现状的一些主要方面:

  1. 用户行为研究:研究用户在贴吧系统中的行为、习惯和需求,以及用户参与贴吧活动的动机和因素,为提升用户满意度和活跃度提供参考。
  2. 社区管理研究:研究贴吧系统的管理机制和管理策略,包括如何制定管理规则、如何处理违规行为、如何保护用户隐私等方面。
  3. 信息推荐研究:研究如何通过数据挖掘、机器学习等技术,从贴吧系统的海量信息中推荐给用户最相关、最有价值的信息。
  4. 交互设计研究:研究如何通过优化贴吧系统的交互设计,提升用户体验和用户参与度。
  5. 移动贴吧研究:研究如何将贴吧系统适配到移动平台,以满足用户在移动场景下的需求。

最初,贴吧只是一个简单的话题贴吧,用户可以在其中发布帖子、发表意见和评论。后来,随着用户数量的增加,贴吧不断升级,增加了更多的功能,如图片、视频、音乐等,以满足用户的需求。在过去几年中,贴吧的用户数量不断增长,现在已经成为中国最大的社区论坛之一。除了一般的话题讨论,贴吧还有很多特色的板块,如明星、影视、游戏、动漫、小说等。这些板块都吸引了大量的用户,成为了他们分享兴趣和交流的场所。随着移动互联网的发展,贴吧也逐渐向移动端发展。目前,贴吧的移动端用户量已经超过了PC端,成为了百度公司的重要战略之一。贴吧也在不断升级和改进,以满足用户的需求。未来,贴吧将会继续发展,为用户提供更好的社区服务。

1.3 本文的组织结构

第一章是绪论,本帖子的开头部分,对本题目的研究背景和研究意义等一些做文字性的描述。

第二章研究了贴吧管理系统的所采用的开发技术和开发工具。

第三章是系统分析部分,包括系统总体需求描述、功能性角度分析系统需求、非功能性等各个方面分析系统是否可以实现。

第四章是系统设计部分,本帖子的重要部分,提供了系统架构的详细设计和一些主要功能模块的设计说明。

第五章是系统的具体实现,介绍系统的各个模块的具体实现。

第六章在前几章的基础上对系统进行测试和运行。

最后对系统进行了认真的总结,以此对未来有一个新的展望。

第2章  相关技术介绍

2.1 Java语言与JDK开发环境 

Java是美国sun公司所推出的一款程序设计语言,其能够在多个平台内应用,具有良好兼容性,进而其凭借自身优势在数据中心、个人PC与科技超级计算机等平台内广泛应用,具有目前最为庞大的开发者专业社群[1]。

JDK为美国sun公司为java开发员所推出的一款全新产品,要是没有JDK的情况下,所安装的java程序也就无法运行[2]。

2.2 B/S结构

基于Java技术开发的B/S架构系统,需要借助Tomcat服务器应用程序进行部署运行[5]。用户访问系统的时候,通过浏览器向应用程序服务器端发起访问请求,服务器端的程序在接到用户请求以后,服务器端应用程序对客户请求做出相应,在调用服务器端的业务逻辑程序完成和数据库端的交互,进一步生成相应的HTML/XML数据,最终把结果反馈给浏览器端用户[3]。

在该系统的开发中,开发模式采用B/S架构技术进行实现,通过部署服务器端应用程序,实现用户通过网站域名或者内网IP地址访问系统,实现系统中数据的动态化呈现和管理,加之页面效果的动态化呈现,不仅提升了页面的表现力,而且管理者可以随时更新系统中的各种信息,充分满足管理者和访问用户之间的信息交互[4]。

2.3 Springboot框架

Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。尽管Spring框架自身对编程模型没有限制,但其在Java应用中的频繁使用让它备受青睐,以至于后来让它作为EJB(EnterpriseJavaBeans)模型的补充,甚至是替补。Spring框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring框架具有控制反转(IOC)特性,IOC旨在方便项目维护和测试,它提供了一种通过Java的反射机制对Java对象进行统一的配置和管理的方法。Spring框架利用容器管理对象的生命周期,容器可以通过扫描XML文件或类上特定Java注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。Spring框架具有面向切面编程(AOP)框架,SpringAOP框架基于代理模式,同时运行时可配置;AOP框架主要针对模块之间的交叉关注点进行模块化。Spring框架的AOP框架仅提供基本的AOP特性,虽无法与AspectJ框架相比,但通过与AspectJ的集成,也可以满足基本需求[5][6]。

2.4 MyEclipse开发工具

MyEclipse是由Genuitec公司开发的,一款功能非常强大的JavaEE的集成开发环境,其中包括有:完备的编码、调试、测试和发布功能[10],完整支持Java、Spring、CSS、JavaScript、SpringMVC、HTML、JSF、Mybatis、SQL等技术。在体系结构上,MyEclipse的特征可以被分为7类:JavaEE模型;Web开发工具、EJB开发工具、JavaEE项目部署服务、应用程序服务器的而连接器、数据库服务、MyEclipse整合帮助[7]。

对于以上每一种功能的类别,在MyEclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse在结构上的这种模块化,可以让它在不影响其他模块的情况下,对其中任意的一个模块进行单独的扩展和升级。强大的MyEclipse应用开发平台也不仅仅只是MyEclipse的插件而已,同时更是一款功能强大的,用于JavaEE的集成开发环境[8]。

2.5 tomcat服务器

Tomcat软件是在一个开放的、参与式的环境中开发的,许多人都喜欢使用它[13]。它可以独立的被应用,却不适用于并发访问较高的情况。它是一个小型的服务连接器,程序员用它来测试服务器页面。Tomcat服务器的性能稳定、容易上手、不需要消费即可获得等,这些益处抓住开发者的眼球,使用者擢发难数[9]。

2.6 MySQL数据库

MySQL经过多次的更新,功能层面已经非常的丰富和完善了,从MySQL4版本到5版本进行了比较大的更新,在商业的实际使用中取得了很好的实际应用效果。最新版本的MySQL支持对信息的压缩,同时还能进行加密能更好的满足对信息安全性的需求。同时经过系统的多次更新,数据库自身的镜像功能也得到了很大的增强,运行的流畅度和易用性方面有了不小的进步,驱动的使用和创建也更加的高效快捷。最大的变动还是进行了空间信息的显示优化,能更加方便的在应用地图上进行坐标的标注和运算。强大的备份功能也保证了用户使用的过程会更加安心,同时支持的Office特性还支持用户的自行安装和使用。在信息的显示形式上也进行了不小的更新,增加了两个非常使用的显示区,一个是信息区,对表格和文字进行了分类处理,界面的显示更加清爽和具体。第二是仪表的信息控件,能在仪表信息区进行信息的显示,同时还能进行多个信息的比对,为用户的实际使用带来了很大的便捷[8][9]。

针对本文中设计的贴吧管理系统在实际的实现过程中,最终选择MySQL数据库的主要原因在于在用户的应用系统应用及开发的过程中会存在大量的数据库比较频繁的操作,而且数据的安全性要求也是非常的高。综合这些因素,最终选择安全性系数比较高的MySQL来对贴吧管理系统后台数据进行存储操作[10][11]。

数据库管理系统的总体结构图如下图所示。

图2-1 数据库组成结构

第3章 系统分析

3.1 可行性分析

本次设计基于B/S 模式下,运用Java技术采用的是MySQL数据库和MyEclipse实现,总体的可行性共分为以下三个方面。

3.1.1 技术可行性分析

所谓的技术可行性就是在限定时间,前期拟定的功能能否被满足。在开发设计上是否会遇上解决不了的问题。做完的项目能否被很好地应用,如果存在缺点在后期的维护上是否存在很大的难度。在对这个系统评估后,认定已存在的技术能达成目标。用Java技术来实现动态的页面,嵌入低依赖性的设计模式,灵活的数据库,配合稳定的服务器,整个系统的运行效率大大提升。由此可见,在技术层面达成目标不是非非之想。

3.1.2 经济可行性分析

在项目上使用的工具大部分都是是当下流行开源免费的,所以在开发前期,开发时用于项目的经费将会大大降低,不会让开发该软件在项目启动期受到经费的影响,所以经济上还是可行的。尽量用最少的花费去满足用户的需求。省下经费用于人工费,以及设备费用。将在无纸化,高效率的道路上越走越远。

3.1.3 操作可行性分析

本系统实现功能的操作很简单,普通电脑的常见配置就可以运行本软件,并且只要粗通电脑使用的基本常识就可以流畅的使用本软件。电脑具备连接互联网的能力,并且可以正常访问系统,并不需要操作者有什么高超的能力,只需了解业务流程,并且按照专业知识进行正确操作即可,所以贴吧管理系统具备操作可行性。

3.2 功能需求分析

在系统开发设计前,应该对功能做初步设想,清楚这个管理系统有什么板块,每个板块有什么功能,整体的设计是否满足使用者的需求,接着对所开发的系统功能进行的详细分析总结,从而设计出完整的系统并将其实现。用户和开发人员的交流分析,使其达到最佳理解程度,使系统功能达到最佳。

用户用例图如下所示。

图3-1用户用例图

管理员用例图如下所示。

图3-2管理员用例图

贴吧管理系统在对需求做解析后,整个系统主要分为两个部分:管理员和用户,每个模块下的分支功能不一样。对功能做出如下说明:

用户模块功能如下:

注册账号:用户填写个人信息,并验证手机号码。

登录:根据账号密码进行登录操作。

维护个人信息:用户因个人信息的变更可以随时修改自己注册信息。

新增、查询贴吧信息数据。

发布新的帖子内容。

查看系统公告信息。

浏览评论信息:选中某间帖子可查看其用户的评论。。

查看历史发布帖子:用户可以查看自己以往发布的帖子信息。

评论:用户可以根据自己的观点看法对相关帖子进行评论。

管理员功能模块:

修改密码:管理员可以随时修改自己进入系统的登录密码,以保证系统的安全性。

维护普通用户,审核普通用户的账号,可以冻结普通用户的登录权限,或者删除普通用户账号。

发布系统公告信息,维护公告信息数据。

贴吧管理:审核、维护用户的帖子信息数据。

维护、更新轮播图信息。

3.3 非功能需求分析

系统非功能需求有非常多,比如性能需求、可承载最大用户数、稳定性、易用性需求等。本系统分析时考虑到易用性需求,因为系统是给人使用的,所以必须充分从用户的角度出发,考虑用户体验,使系统易理解易上手易操作。

3.4 数据流程分析

对系统的数据流进行分析,系统的使用者分为二类,一般用户,管理员。系统主要对界面信息传送,登录信息的验证,注册信息的接收,用户各种操作的响应做处理。

系统顶层数据流图如下图所示。

图3-3 顶层数据流图

要判断用户是是什么身份,是根据登录的数据来判断后,跳转到对应的功能界面。在系统的内部用户就可以对数据进行操作,数据库中心就可以接收到系统传输的有效数据流来对数据sql语句进行对应操作。

系统底层数据流图如下图所示。

 图3-4 底层数据流图

系统可以分为前台和后台两部分,每一种操作后系统都返回操作结果。前台和后台的数据连接主要通过数据库,既分别对数据库做不同的操作。

第4章 系统设计

4.1 系统架构设计

目前B/S体系的系统主要的数据访问方式是:通过浏览器页面用户可以进入系统,系统可以自动对用户向服务器发送的请求进行处理,处理请求是在系统后台中进行的,用户在浏览器页面上进行相应操作,就能够看到服务端传递的处理结果。贴吧管理系统主要分为视图-模型-控制三层架构设计。在视图层中,主要是操作在服务器端向客户端反馈并显示的数据,在模型层中,主要处理相关的业务逻辑、数据整合等,最后的控制层它介于视图和模型之间,主要是调整两层之间的关系,最终落实数据的传递。

系统架构图如下图所示。

图4-1系统架构图

4.2 系统功能结构

贴吧管理系统总体分为前台用户模块和后台管理员模块。

两个模块表现上是分别独立存在,但是访问的数据库是一样的。每一个模块的功能都是根据先前完成的需求分析,并查阅相关资料后整理制作的。

综上所述,系统功能结构图如下图所示。

图4-2系统功能结构图

4.3 功能模块设计

用户管理模块

该模块是为所有用户登录设计的,如用户这种普通用户登录后只能进行自己的普通功能操作(如个人信息修改),管理员和超级管理员登录后有不同的权限,管理员不能超越权限。超级管理员能对整个系统的数据进行管理,主要是用户的登录权限以及用户登录后在系统里的操作权限。

登录模块:登录模块是进入系统的入口,所有用户必须登录后才能访问系统。登录需要输入用户名和密码,如果多次尝试登录需要输入验证码。登录时需要选择用户的角色,是一般用户还是管理员登录等。登录成功后,会通过数据库获取用户的权限,并跳转至用户的主页面。

评论模块:评论模块促进用户对帖子进行点评,查看某个帖子已存在的评论,发表评论可以达到真实描述帖子的效果。

公告数据模块:可分为公告数据浏览、公告数据检索、公告数据维护三个模块,管理员对公告数据有维护的权限,发布新的公告数据、更新已有的公告数据等。

帖子管理模块:帖子管理分为帖子添加、修改和帖子发布。帖子信息由管理员进行修改、添加、删除操作;帖子发布由普通用户来执行。

贴吧模块:注册的用户可以到贴吧发帖或者回复别人的帖子进行交流。通过这种形式与其他用户进行沟通,促进用户之间的信息交流,同时也有利于与其他人交换心得经验,达到互相促进的效果。这些信息将会添加到对应的发帖表和回复表里。

4.4 数据库设计

4.4.1 数据需求分析

从前面可以分析到数据库中最重要的是贴子信息,用户信息,评论信息。分析可以得到如下数据描述:

平台用户:用于记录用户的各种信息,包括用户名、密码、姓名、性别、地址、邮箱、联系方式等数据项。

管理员:记录管理员的登录信息。包括用户名,密码,权限等数据项。

贴子:存放给贴子的内容,包括贴子编号、标题、帖子类型、图片、发布人等数据项。

评论:存储用户的评论。包括评论内容,评论的信息,评论人,时间等数据项。

公告数据:存储平台内的公告数据内容。包括标题,公告数据内容,时间等数据项。

4.4.2 数据表

数据库逻辑结构就是将E-R图在数据库中用具体的字段进行描述。用字段和数据类型描述来使对象特征实体化,最后形成具有一定逻辑关系的数据库表结构。贴吧管理系统所需要的部分数据结构表如下表所示。

表名:users

功能:用户表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

  主键

username

varchar

100

用户名

password

varchar

100

密码

role

varchar

100

角色

管理员

addtime

timestamp

新增时间

CURRENT_TIMESTAMP

表名:token

功能:token表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

  主键

userid

bigint

用户id

username

varchar

100

用户名

tablename

varchar

100

表名

role

varchar

100

角色

token

varchar

200

密码

addtime

timestamp

新增时间

CURRENT_TIMESTAMP

expiratedtime

timestamp

过期时间

CURRENT_TIMESTAMP

表名:news

功能:公告

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

  主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

title

varchar

200

标题

introduction

longtext

4294967295

简介

picture

longtext

4294967295

图片

content

longtext

4294967295

内容

表名:forum

功能:贴吧

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

  主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

title

varchar

200

帖子标题

content

longtext

4294967295

帖子内容

parentid

bigint

父节点id

userid

bigint

用户id

username

varchar

200

用户名

avatarurl

longtext

4294967295

头像

isdone

varchar

200

状态

表名:config

功能:配置文件

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

  主键

name

varchar

100

配置参数名称

value

varchar

100

配置参数值

表名:yonghu

功能:用户

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

  主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

zhanghao

varchar

200

账号

mima

varchar

200

密码

xingming

varchar

200

姓名

xingbie

varchar

200

性别

shouji

varchar

200

手机

touxiang

longtext

4294967295

头像

第5章 系统实现

5.1 登录模块的实现

系统的登录窗口是用户的入口,用户只有在登录成功后才可以进入访问。通过在登录提交表单,后台处理判断是否为合法用户,进行页面跳转,进入系统中去。

登录合法性判断过程:用户输入账号和密码后,系统首先确定输入输入数据合法性,然后在login.JSP页面发送登录请求,调用登录验证方法来验证。

用户登录模块的IPO如下所示:

输入:用户名和密码。

处理:

1)检测用户输入的账号、密码是否正确及在数据库已对应存在。

2)从数据库中提取记录,并储存在本地的session中(timeout默认=30min)。

3)根据用户名,将其显示在系统首页上。

输出:是否成功的信息。

登录流程图如下所示。

图5-1登录流程图

系统登录界面如下所示。

图5-2系统登录界面

5.2 注册模块的实现

用户在填写数据的时候必须与注册页面上的验证相匹配否则会注册失败,注册页面的表单验证是通过JavaScript进行验证的,用户名的长度必须在6到18之间,邮箱必须带有@符号,密码和密码确认必须相同,你输入的密码,系统会根据你输入密码的强度给出指定的值,电话号码和身份证号码必须要求输入格式与生活相符合,当你前台验证通过的时候你点击注册,表单会将你输入的值通过name值传递给后台并保存到数据库中。

用户注册流程图如下图所示。

图5-3用户注册流程图

用户注册界面如下图所示。

图5-4用户注册界面

5.3 用户子系统模块的实现

5.3.1 个人资料模块

用户点击登录填写账号信息登录后,会切换内容为“某某用户欢迎您”和历史订单,并给出注销链接。当用户登录成功后会将个人信息保存在session作用域中,点击自己的用户名时,会跳转到个人详细信息页面,由后台通过Freemarker取出session作用域中的用户信息进行动态渲染,例如,邮箱、电话号码、用户名等等。同时页面上会显示修改个人信息和修改密码的按钮,这时客户可以修改自己的登录密码以保障账号的安全性,防止被人窃取账号,通过updatePassword()实现,同时也可以根据自己的个人信息是否变动做出相应的修改,通过updateUserInfo()实现。

密码修改流程图如下所示。

图5-4密码修改流程图

5.3.2 用户首页模块

系统呈现出一种简洁大方的首页:界面简约、鳞次栉比,用户能轻车熟路的使用。出于对系统使用群体广泛的顾虑,应有良好性能的后台。

如下图所示为系统的首页界面。

图5-5系统首页界面

5.3.3 贴吧帖子管理模块

此页面的关键是编写贴吧帖子,包括帖子编号,名称,详情等。单击提交按钮以完成信息的添加。如果未写入完整的贴吧帖子,例如,如果未写入帖子标题,系统将给出相应的错误提示,并且无法成功输入。数据以概念的形式以onsubmit =“return checkForm()”的形式写入以进行检查,checkForm()函数是一种用于写入数据的不同类型的校对方法,是不是为空也是经过form表单中的οnsubmit=”return checkForm()来检查。

贴吧列表展示界面如下图所示。

图5-7贴吧列表展示界面

发布帖子界面如下图所示。

图5-8发布帖子界面

5.3.4 评论模块

用户可以对贴吧内已发布的帖子做出评论。点击按钮之后会跳转至评论填写页面,填写评论提交之后,后台通过PinglunController的publish方法将相关信息保存到数据库系统。

评论添加流程图如下图所示。

图5-9评论添加流程图

评论添加界面如下图所示。

图5-10评论添加界面

5.4 管理员子系统模块的实现

5.4.1 用户管理模块

管理员在yhzhgl查看用户信息,先使用sql语句查询出所有用户表的数据,然后调用mysql_query($sql),返回一个数组对象,在for循环里,将数据放入页面模板中,添加用户则将添加的用户数据封装在sql语句,中然后调用mysql_query($sql)方法将用户内容插入用户表中。

用户管理界面如下图所示。

图5-113用户管理界面

5.4.2 贴吧管理模块

管理员点击左侧菜单“贴吧”,页面跳转到贴吧管理外观,调用后台查询所有贴吧帖子,显示帖子列表。并将信息密封到数据集合List,绑定到请求对象,然后页面跳转到相应的jsp,显示出贴吧帖子,单击删除按钮完成贴吧信息的删除。

贴吧管理流程图如下图所示。

图5-12贴吧管理流程图

贴吧管理界面如下图所示。

图5-13贴吧管理界面

5.4.3 公告管理模块

如果公告数据的信息需要修改,管理员可以通过查询公告数据的基本信息来查询公告数据,查询公告数据是通过ajax技术来进行查询的,需要传递公告数据的标题、编号等参数然后在返回到该页面中,可以选中要修改或删除的那条信息,如果选中了超过一条数据,页面会挑一个窗口提醒只能选择一条数,如果没有选中数据会挑一个窗口题型必须选择一条数据。当选择确认修改的时候,后台会根据传过来的id到数据库查询,并将结果返回到修改页面中,可以在修改页面中修改刚刚选中的信息当点击确认的时候from表单会将修改的数据提交到后台并保存到数据库中,就是说如果提交的数据数据库中存在就修改,否则就保存。

公告信息添加流程图如下所示。

图5-14公告信息添加流程图

公告数据展示界面如下图所示。

图5-15公告数据展示界面

公告添加界面如下图所示。

图5-16公告添加界面

公告数据管理界面如下图所示。

图5-17公告数据管理界面

第6章 系统测试

6.1 测试目的

在对该系统进行完详细设计和编码之后,就要对贴吧管理系统的程序进行测试,检测程序是否运行无误,反复进行测试和修改,使之最后成为完整的软件,满足用户的需求,实现预期的功能。

6.2 测试过程

下表是系统登录功能测试用例,检测了用户名和密码的不同的输入情况,观察系统的响应情况。得出该功能达到了设计目标。

表6-1 系统登录功能测试用例

功能描述

用于系统登录

测试目的

检测登录时的合法性检查

测试数据以及操作

预期结果

实际结果

输入的用户名和密码带有非法字符

提示用户名或者密码错误

与预期结果一致

输入的用户名或者密码为空

提示用户名或者密码错误

与预期结果一致

输入的用户名和密码不存在

提示用户名或者密码错误

与预期结果一致

输入正确的用户名和密码

登录成功

与预期结果一致

下表是注册功能测试用例,检测了各种数据的输入情况,观察系统的响应情况。得出该功能达到了设计目标。

表6-2 注册功能测试用例

功能描述

用于用户注册

测试目的

检测用户注册时的合法性检查

测试数据以及操作

预期结果

实际结果

输入的手机号不合法

提示请输入正确的手机号码

与预期结果一致

输入的字段为空

提示必填项不能为空

与预期结果一致

输入的密码少于6位

提示密码必须为6-12位

与预期结果一致

输入的密码大于12位

提示密码必须为6-12位

与预期结果一致

下表是帖吧管理功能的测试用例,检测了帖吧管理中对帖吧信息的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。

前置条件;用户登录系统。

表6-3 帖吧管理的测试用例

功能描述

用于帖吧管理

测试目的

检测帖吧管理时的各种操作的运行情况

测试数据以及操作

预期结果

实际结果

点击添加帖吧,必填项合法输入,点击保存

提示添加成功

与预期结果一致

点击添加帖吧,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击修改帖吧,必填项修改为空,点击保存

提示必填项不能为空

与预期结果一致

点击修改帖吧,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击删除帖吧,选择帖吧删除

提示删除成功

与预期结果一致

点击搜索帖吧,输入存在的帖吧名

查找出帖吧

与预期结果一致

点击搜索帖吧,输入不存在的帖吧名

不显示帖吧

与预期结果一致

6.3 测试结果

使用阿里云PTS(Performance Testing Service)性能测试服务对线上系统进行压力测试。线上服务器环境为:1核心CPU,1G内存,1Mbps公网带宽,Centos7.0操作系统。

压测过程中使用了2台并发机器,每台机器20个用户并发,对系统主页,登录,数据查询和数据维护等模块进行并发访问,测试结果是有40个用户并发时,数据管理相关页面的响应时间甚至达到了7s,通过查看服务器出网流量发现已经达到1381kb/s,可以看出服务器的带宽已经达到峰值,如果系统使用5Mbps的带宽,系统的响应时间和TPS将会大大增加。在整个测试的过程中,CPU的使用率占用仅8%,也提现出带宽瓶颈对系统的影响非常严重。

  1. 总结与展望

第7章 

通过贴吧管理系统的开发,本人巩固了之前学过的知识,如今将平时所学到的知识融合在设计中,在设计过程中,做了很多的准备,首先,在数据库系统的设计过程中,尤其是在数据库的工作原理、工作特点,对其深刻的讨论,与此同时,对于小型站点来说,最好服务器的选择,其次,利用所学的知识点分析所做的系统,并在此基础上设计。

目前本系统已经上线,正在试运行阶段,用户反馈良好,基本完成用户所需,试运行过程中没有出现阻断性问题,有一些不足和小问题也及时予以修正,系统上线后,为了保证数据的安全性,对系统进行了备份操作,系统备份是每两个月备份一次,数据库备份为每周备份一次,系统部署在租赁的云平台服务器中。

本次系统上线成功后,得到了用户的高度认可,但是在功能上和性能上还需做进一步的研究处理,使其有更高的性能和更好的用户体验。

系统在以后的升级过程中,需要解决一系列用户所提出的问题,例如打印过程中如何避免浏览器的兼容性问题,大量用户访问时,如何保持较高的响应速度,在系统今后的升级过程中将着重解决这些安全性问题。

参考文献

[1]王志亮,纪松波.基于SpringBoot的Web前端与数据库的接口设计[J].工业控制计算机,2023,36(03):51-53.

[2]Lee Claire Seungeun. How Online Fraud Victims are Targeted in China: A Crime Script Analysis of Baidu Tieba C2C Fraud[J]. Crime & Delinquency,2022,68(13-14).

[3]李乐.Java语言应用研究[J].智慧中国,2022(09):80-81.

[4]杨朝. “三和大神”百度贴吧用户的游戏化互动研究[D].华东政法大学,2022.DOI:10.27150/d.cnki.ghdzc.2022.001363.

[5]杨迎.Java语言异常处理机制的分析[J].电子技术,2022,51(03):42-43.

[6]曹嵩彭,王鹏宇.浅析Java语言在软件开发中的应用[J].信息记录材料,2022,23(03):114-116.DOI:10.16009/j.cnki.cn13-1295/tq.2022.03.009.

[7]. A Boon To The Skaters Community: The US Based Blog Website, 'Skate Ideas'[J]. M2 Presswire,2022.

[8]盛伟翔,扶齐彦,王迪.基于百度贴吧的当代大学生价值观评价系统设计与开发[J].电脑编程技巧与维护,2021(09):10-12.DOI:10.16184/j.cnki.comprg.2021.09.004.

[9]张雪雯. 网络论坛中的多元化管理关系研究[D].吉林大学,2021.DOI:10.27162/d.cnki.gjlin.2021.001914.

[10]王颖. 面向高校贴吧发帖的文本分类及应用研究[D].扬州大学,2021.DOI:10.27441/d.cnki.gyzdu.2021.001835.

[11]Fuyuan Cheng. Talent Recruitment Management System for Small and Micro Enterprises Based on Springboot Framework[J]. Advances in Educational Technology and Psychology,2021,5(2).

[12]Lee Claire Seungeun. Online Fraud Victimization in China: A Case Study of Baidu Tieba[J]. Victims & Offenders,2021,16(3).

[13]赵振宇,富婷,李雅伟,苗文俊.高职院校贴吧存在的问题及对策分析——以承德石油高等专科学校贴吧为例[J].传媒论坛,2020,3(21):154-155+157.

[14]Kevin Kline. The Java Language Extension for SQL Server Is Now Open Source[J]. Database Trends and Applications,2020,34(4).

[15]韩丹丹. 百度贴吧的发展困境及原因探析[D].湖南大学,2020.DOI:10.27135/d.cnki.ghudu.2020.002656.

[16]来纯晓,李艳翠,金松林.基于贴吧的高校网络舆情预警和引导系统研究[J].智能计算机与应用,2019,9(04):16-20.

[17]邹进辉.论班级“贴吧”在班级管理中的运用[J].教育界(基础教育),2019(06):132-133.

[18]张锐. 网络游戏贴吧的粉丝文化再生产与认同研究[D].南京师范大学,2019.DOI:10.27245/d.cnki.gnjsu.2019.001423.

[19]刘钰玲.学校贴吧在中学教学中的问题与策略研究[J].基础教育研究,2018(23):71-73.

[20]吕宇琛.SpringBoot框架在web应用开发中的探讨[J].科技创新导报,2018,15(08):168+173.DOI:10.16660/j.cnki.1674-098X.2018.08.168.

致谢

伴随着设计的完成,大学生涯也随之即将结束。大学期间是我最珍惜的时光,大学时光中学会了很多,也成长了很多,这段时光中每一段回忆都刻在脑海中。感谢一起学习,一起成长同学们,和成长过程悉心教导的老师们,非常感激有你们的陪伴。

首先感谢我的指导老师,设计的完成离不开老师的一系列指导。在毕业设计的完成过程中,老师给出了很多中肯的建议,正是由于老师一丝不苟的工作态度,我的设计才能顺利的完成。

最后,感谢在大学生涯中每一位教导我的老师,是你们教给了我丰富的知识,更教会了我遇到问题时,如何去应对并解决。谢谢你们的帮助与支持。

点赞+收藏+关注  →私信领取本源代码、数据库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值