论坛系统设计与实现 (代码+数据库+LW)

摘  要

如今的时代,是有史以来最好的时代,随着计算机的发展到现在的移动终端的发展,国内目前信息技术已经在世界上遥遥领先,让人们感觉到处于信息大爆炸的社会。信息时代的信息处理肯定不能用之前的手工处理这样的解决方法,必须采用计算机来处理这些信息,因为传统方法对应计算机处理的信息效率上真的相差甚远。

本次使用Java技术开发的论坛系统,就是运用计算机来管理论坛帖子信息,该系统是可以实现版主管理,新闻信息管理,论坛帖子管理,用户管理,留言版管理等功能。

论坛系统使用计算机处理相关信息,主要是在数据的传输上能达到即可传递,数据不管是想要获取或者输入,都可以及时反馈,极大的提高了效率,使用的MySQL数据库也能让数据更能安全的存储。

关键词:论坛系统;版主;帖子

  

摘  要

Abstract

第一章 绪论

1.1 研究背景

1.2 研究意义

1.3 研究内容

第二章 开发环境与技术

2.1 Java语言

2.2 JDK简介

2.3 Eclipse开发工具

2.4 Spring Boot框架

第三章 系统分析

3.1可行性分析

3.1.1运行可行性分析

3.1.2技术可行性分析

3.1.3经济可行性分析

3.2系统流程分析

3.3 系统性能分析

3.3.1系统的安全性

3.3.2系统易维护性

3.3.3系统可扩展性

3.4系统功能分析

第四章 系统设计

4.1界面设计原则

4.2功能模块设计

4.3数据库设计

4.3.1数据库E-R图

4.3.2 数据库表结构

第五章 系统实现

5.1 管理员功能实现

5.1.1 版主管理

5.1.2 用户管理

5.1.3 留言版管理

5.2 版主功能实现

5.2.1 论坛管理

5.2.2 新闻信息查看

5.2.3 个人信息

5.3 用户功能实现

5.3.1 留言版

5.3.2 在线论坛

5.3.3 新闻信息

第六章 系统测试

6.1 测试方案

6.2 系统测试用例

6.2.1 登录功能测试

6.2.2 注册功能测试

6.3 测试的结果

结  论

参考文献

致  谢

第一章 绪论

1.1 研究背景

在现在社会,对于信息处理方面,是有很高的要求的,因为信息的产生是无时无刻的,并且信息产生的数量是呈几何形式的增加,而增加的信息如何存储以及短时间分析检索,也是有时效性的,所以,不管是任何的企业和个人,只要需要处理信息,必然是要寻找到一个适合自己的解决方案,而软件开发商和数据库提供商就是为了解决这些问题。相比之前人工信息处理的水平,现代的信息处理方法是完胜以前的信息处理方法。开发一个符合自己需求的信息管理系统,可以把整个信息处理的过程变得很有规范,并且很有水准,让整个信息处理变成一个自动化的过程,并且在数据处理结果之中直接设定好检索标准,或者是多条件检索标准,通过数据分析获得自己需要的内容,这都是信息化的好处。当一切信息数据存在小小的存储介质之中,那么数据迁移备份的重要性也变得更加简洁,可以设置自动化远程备份,自动化远程处理,不管是使用过程还是维护过程,都会变得更加的高效和整洁,最重要的成本上面的控制,可以极限减少,开源节流,不外如是,减少社会资源的浪费,也是计算机技术的存在的一个优势。所以,对于论坛帖子信息的管理,一方面为了提高论坛帖子信息的管理水平,另一方面为了提高论坛帖子信息的维护水平,论坛系统的开发就显得十分有必要了。

3.4系统功能分析

系统功能主要针对主要模块功能进行分析,暂时不考虑非典型性的问题,只要能满足正确操作流程即可。

论坛系统设置的角色有管理员,版主,用户等。

(1)管理员

管理员管理论坛,主要是对论坛帖子增删改查以及对论坛帖子回复进行查看,对版主和用户进行管理,管理新闻等。对管理员的功能进行分析之后,将使用图3.4的管理员用例图来描述管理员的功能。

(2)版主

版主可以发布帖子,可以查询论坛帖子,可以对论坛帖子回复进行查看,可以回复帖子,可以删除帖子,可以查看新闻,更改个人信息等。对版主的功能进行分析之后,将使用图3.5的版主用例图来描述版主的功能。

(3)用户

用户在前台查看新闻,在留言版对发布的留言和管理员的回复进行查看,在论坛模块发帖,评论帖子,查看帖子。对用户的功能进行分析之后,将使用图3.6的用户用例图来描述用户的功能。

第四章 系统设计

不管是好用还是不好用的系统,在如今的互联网时代都会被广而告之,但是能留存下来的,必然是好用的,并且好看的系统,不好用并且不好看的系统用户会逐渐抛弃的。所以,开发的系统必须是有主题的,要打开系统就明白这个系统主要的作用和功能,所以设计这方面需要下苦功夫的。

4.1界面设计原则

一般都是图片,文字以及各种输入框和按钮等组成的界面,每个界面的内容都大不相同,如何设计成页面的统一,操作的统一,这是下面需要讨论的问题。

第一点:界面设计必须符合人体工程学。人体工程学是一门入微级别的学问,主要考虑人类在各种工作状态下如何提高生产效率。所以说,界面设计的首要目的,就是为了提升效率。

第二点:有效导航是必须的。导航的目的,就是帮助操作人员的记忆能力,提高操作效率而生的,所以导航一定要设置的符合模块的功能,让用户一看到导航就会知道是哪个模块,需要哪些操作,这些步骤是必不可少的,如果把所有功能放到一个页面呈现平面化布局,肯定不合适,所以合适的导航能够帮助工作。

第三点:界面设计的统一性。统一性不是说背景图片是同一个图片或者背景是同一个色系,而是说让操作系统统一。比如导航就统一用树状结构,有模块有层次,理解容易。多项搜索如果一行放不下,就收起,可以选择多项也可以模糊查询,这些都要符合人类正常认知才可以。

所以说,系统设计的核心就是界面设计,主要的业务处理逻辑只要能处理,需要下大力气的还是页面设计。

4.2功能模块设计

本小节运用功能结构图来描述管理员具备的详细的功能,对管理员的功能结构图绘制结果如图4.1所示。管理员管理论坛,主要是对论坛帖子增删改查以及对论坛帖子回复进行查看,对版主和用户进行管理,管理新闻等。

本小节运用功能结构图来描述版主具备的详细的功能,对版主的功能结构图绘制结果如图4.2所示。版主可以发布帖子,可以查询论坛帖子,可以对论坛帖子回复进行查看,可以回复帖子,可以删除帖子,可以查看新闻,更改个人信息等。

本小节运用功能结构图来描述用户具备的详细的功能,对用户的功能结构图绘制结果如图4.3所示。用户在前台查看新闻,在留言版对发布的留言和管理员的回复进行查看,在论坛模块发帖,评论帖子,查看帖子。

4.3.2 数据库结构

在程序开发的过程中,系统设计里面包含有数据库的设计,一般都在功能设计的后面进行数据设计,为什么有这样的顺序呢?那是有原因的。数据库设计不能凭空想象,必须符合数据的定义,而数据只是在使用过程之中产生,其实并没有具体化的表现,所以要把数据进行结构的整理,字段的规划。比如用户账号可能是中文或者英文,以及数字形式存在,更或者可能包含一些符号,那么账号字段的设计就只能是文本形式存在,不能是数据形式或者是时间形式存在,以此类推,数据表结构的设计就是在对系统的具体实现数据进行描述规划的一种行为。所以在这个环节尤其要注意,否则可能使用过程中会发现很多不可预料的问题。

对本系统的数据库的要求就是,要严格遵循数据实现原则,符合数据定义范式。对每个表都要进行具体分析,并且表之间的关系更应该有逻辑性,如果违反前面的要求,那么数据很有可能出现问题,所以要把数据之间的关系用E-R图形式画出来,这样理解起来更直观,更不容易出错,效率也更高。

表4.1 版主表

字段

注释

类型

id (主键)

主键

int(11)

username

账户

varchar(200)

password

密码

varchar(200)

banzhu_name

版主姓名

varchar(200)

banzhu_photo

头像

varchar(255)

sex_types

性别

int(11)

banzhu_phone

联系方式

varchar(200)

banzhu_email

邮箱

varchar(200)

banzhu_delete

假删

int(11)

create_time

创建时间

timestamp

表4.2 论坛表

字段

注释

类型

id (主键)

主键

int(11)

forum_name

帖子标题

varchar(200)

yonghu_id

用户

int(11)

banzhu_id

版主

int(11)

users_id

管理员

int(11)

forum_content

发布内容

text

super_ids

父id

int(11)

forum_types

帖子类型

int(11)

forum_state_types

帖子状态

int(11)

insert_time

发帖时间

timestamp

update_time

修改时间

timestamp

create_time

创建时间

timestamp

表4.3 留言版表

字段

注释

类型

id (主键)

主键

int(11)

yonghu_id

用户

int(11)

liuyan_name

留言标题

varchar(200)

liuyan_text

留言内容

text

insert_time

留言时间

timestamp

reply_text

回复内容

text

update_time

回复时间

timestamp

create_time

创建时间

timestamp

表4.4 新闻信息表

字段

注释

类型

id (主键)

主键

int(11)

news_name

新闻名称

varchar(200)

news_photo

新闻图片

varchar(200)

news_types

新闻类型

int(11)

insert_time

新闻发布时间

timestamp

news_content

新闻详情

text

create_time

创建时间

timestamp

表4.5 管理员表

字段

注释

类型

id (主键)

主键

bigint(20)

username

用户名

varchar(100)

password

密码

varchar(100)

role

角色

varchar(100)

addtime

新增时间

timestamp

表4.6 用户表

字段

注释

类型

id (主键)

主键

int(11)

username

账户

varchar(200)

password

密码

varchar(200)

yonghu_name

用户姓名

varchar(200)

yonghu_photo

头像

varchar(255)

sex_types

性别

int(11)

yonghu_phone

联系方式

varchar(200)

yonghu_email

邮箱

varchar(200)

yonghu_delete

假删

int(11)

create_time

创建时间

timestamp

第五章 系统实现

程序开发人员对功能具体实现后,都要描述自己编写的功能实现,一般都通过文字描述功能,实现用图片截图的形式出现,通过这样的设定,可以让更多得人明白系统的实现结果,达到更容易理解程序操作的目的。

5.1 管理员功能实现

5.1.1 版主管理

管理员点击导航栏的版主管理链接就进入版主管理界面。版主管理界面如图5.1所示。本功能允许管理员对版主的基本资料进行修改,添加,查询,删除。

5.1.2 用户管理

管理员点击导航栏的用户管理链接就进入用户管理界面。用户管理界面如图5.2所示。本功能允许管理员对用户基础资料进行修改,查询,添加,删除。

5.1.3 留言版管理

管理员点击导航栏的留言版管理链接就进入留言版管理界面。留言版管理界面如图5.3所示。本功能允许管理员查看用户留言,通过用户姓名或留言标题查询留言,回复留言内容,删除留言等。

5.2 版主功能实现

5.2.1 论坛管理

版主点击导航栏的论坛管理链接就进入论坛管理界面。论坛管理界面如图5.4所示。版主新增论坛帖子,论坛帖子有发帖时间,帖子标题,身份,姓名,手机号,帖子类型等信息,发布帖子之后,版主可以对论坛帖子的回复随时进行查看。

5.2.2 新闻信息查看

版主点击导航栏的新闻信息查看链接就进入新闻信息查看界面。新闻信息查看界面如图5.5所示。本功能允许版主查询新闻,对新闻内容,包括新闻标题在内的新闻信息进行查看。

5.2.3 个人信息

版主点击导航栏的个人信息链接就进入个人信息界面。个人信息界面如图5.6所示。本功能允许版主对个人信息,主要是联系方式,头像等进行更改。

结  论

论坛系统的开发不是一帆风顺的,虽然严格按照一定的开发流程来进行论坛系统的开发,但是中间出现了很多突发情况。当题目选择之后,就开始查找资料,也不知道是查找方式问题还是阅历问题,感觉资料查的都是相关资料,但是当查到资料后看的一头雾水,好多都是与论坛系统开发不相关的,像浪里淘沙一样过滤了很多无用的东西才收集到一点点对自己可用的。当定下功能功能的时候,又开始对功能进行分析,反复的判断功能直接的关系,是否存在逻辑问题。数据库的设计也是一大问题,也许是开发经验不足,当数据库设计好后,编码到一半发现考虑问题不够重复,编码实现太复杂,需要在对数据库表重新设计,返工很多遍。在开发过程中,看到同伴们在努力的开发自己也埋头苦干,最终实现了论坛系统。

本次使用Java技术开发的论坛系统,就是运用计算机来管理论坛帖子信息,该系统是可以实现版主管理,新闻信息管理,论坛帖子管理,用户管理,留言版管理等功能。符合设计预期。

经过整体的开发了解,发现了论坛系统的不足之处,首先第一点就是开发人少,时间短,属于练手项目,所以很多实际生活中可能遇到的问题并没有考虑到位,比如数据的冗余,大数据并发等,这些都是没有考虑的,在以后的日子里将会对技术方面精益求精,不断修复论坛系统,让论坛系统更强壮。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小码学长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值