基于java的在线论坛的设计与实现(编辑修改稿)内容摘要:
是一个很好的工具,不仅仅因为其免费,功能强大,更因为其开放性,越来越多小型应用网站采用 Tomcat作为服务器。 5. Mysql 数据库介绍 MySQL 数据库是一个较小型的数据库系统,同时是一个多用户、多线程强壮的 SQL数据库服务器,并提供免费的安装软件。 由于它对平台环境要求不高,安装方便,适合中小型系统的开发。 在线论坛 的设计与实现 第 7 页 三、 系 统需求分析 系统 功能 需求 本系统开发的总体目标是实现一个基于 Struts+Hibernate 的在线论坛。 在该系统中有四类用户:游客、普通用户、版主和管理员。 因此系统针对这四类角色提出以下需求: 游客的需求:用户注册,查看帖子,查看帖子回复。 普通用户的需求:用户登录,发表帖子,回复帖子,查看公告,对自己发表或回复的帖子进行修改或删除。 版主的需求:具有普通用户的所有功能,对本讨论区的所有帖子可以进行置顶、置精华、屏蔽、取消置顶、取消屏蔽、取消置精华和删除等操作。 管理员的需求:具有普通用户的所有功能, 对所有帖子可以修改或删除,修改用户的个人信息或删除用户,修改和删除公告,添加 、修改 和删除版块,添加和删除版主。 系统 UML 建模 系统用例图的建立 系统管理的用例如图 所示: 修改个人信息浏览帖子未注册的用户回复帖子发表帖子登录注册的用户 e x t e n d e x t e n d e x t e n d 图 系统管理用例图 在线论坛 的设计与实现 第 8 页 管理员管理会员和版块的用例如图 所示 版块管理论坛管理员添加论坛分类种类删除论坛种类修改论坛主题删除会员添加会员会员管理更改会员信息 e x t e n d e x t e n d e x t e n d e x t e n d e x t e n d e x t e n d 图 管理员用例图 系统用户的用例如图 所示 修改个人信息浏览帖子未注册的用户回复帖子发表帖子登录注册的用户 e x t e n d e x t e n d e x t e n d 图 用户用例图 在线论坛 的设计与实现 第 9 页 时序图的建立 会员发贴 、 回帖的时序图 如图 所示。 会员首先使用自己的 账号 和密码登陆系统,登录模块将会把用户的 ID 保存系统的缓存中,并展现论坛的分类模块给 会员。 会员此时可以按照兴趣进入不同的主题讨论区,查看主题文章,并发表新文章和回复新帖,还可以浏览其他类别的主题讨论区。 : 注册的用户登录系统 论坛主页 发贴回帖模块1 :输入用户名和密码2 :显示论坛分类,查看论坛详细文章3 :发表新文章;回复新帖继续浏览文章 图 会员发贴、回帖的时序图 注册用户浏览论坛注册的时序图 如图 所示。 未注册的用户首先进入论坛浏览帖子,但不能发贴和回帖。 后进入注册页面填写注册信息,等候会员管理模块验证并把新用户的信息添加到数据库,返回注册成功,用户可继续浏览帖子。 : 未注册的用户论坛主页 注册页面 会员管理1 :显示论坛分类 ,查看论坛详细文章2 :填写注册信息3 :验证用户,添加新用户信息4 :显示注册成功5 :浏览文章 图 注册的时序图 论坛管理员管理会员的时序图 如图 所示。 管理员在提交 ID 给会员管理模块后,可以对会员进行维护(添加、删除或修改)。 管 理员首先输入自己的账号和密码登录系统,此时会将管理员的 ID 保存在系统缓存中在线论坛 的设计与实现 第 10 页 并提交给会员管理模块。 在操作会员的页面中,管理员会根据需要对每个会员进行增删等操作,并将其信息提交给数据库。 数据库会对其进行处理,并更新会员信息,至此管理员管理会员操作成功。 : 论坛管理员登录系统 会员管理模块处理增删改除操作数据库模块1 :输入帐号和 . . .2 :提交用户 ID4 :提交增删改除的会员 ID5 :数据库处理,并更新会员信息6 :更新成功7 :提示操作成功信息3 :显示会员的操作信息 图 管理会员时序图 论坛管理员管理论坛分类的时序图 如图 所示。 管理员使用自己的 账号 和密码登录后,将管理员的 ID 保存在系统的缓存中并提交给论坛类别管理模块。 在显示论坛类别管理的页面中,将显示处理类别相关信息给管理员,管理员在该页面中进行增删等操作后, 提交操作的 ID 给数据库模块处理。 数据库模块执行操作后更细结果,并提示更新成功。 最后提示处理成功给管理员。 在线论坛 的设计与实现 第 11 页 : 论坛管理员登录系统 论坛类别管理模块相关处理 数据库模块1: 输入帐号和密码2 :提交用户3 :显示论坛类别处理信息4 :提交增删改除操作的 ID5 :数据库处理,并更新结果6 :更新成功7 :提示处理成功信息 图 管理论坛时序图 论坛管理员管理帖子的时序图 如图 所示。 管理在帖子模块可以对会员发表的帖子进行维护(删除),还可以对帖子进行一些额外的智能操作,比如置顶帖子、设置精华帖子等。 更改完成后,都要经过数据库的处理,并更新数据,才能成功。 在线论坛 的设计与实现 第 12 页 : 论坛管理员登录系统 帖子管理模块相关处理 数据库模块1 :输入帐号和密码2 :提交管理员4 :提交删除、置顶贴、精华贴的 ID5 :数据库处理,并更新数据6 :提示成功7 :提示成功信息3 :显示帖子处理信息 图 管理帖子时序图 系统性能需求 为了保证系统能够长期、安全、稳定、可靠、高效的运行,系统应该满足以下的性能需求: (1)系统处理的准确性和及 时性 : 系统处理的准确性和及时性是系统的必要性能。 在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足 用户 对信息处理的需求。 (2)系统的开放性和系统的可扩充性 : 在线论坛 系统在开发过程中,应该充分考虑以后的可扩充性,要求系统提供足够的手段进行功能的调整和扩充。 而要实现这一点,应通过系统的开放性来完成,既系统应是一个开放系统,只要符合一定的规范,可以简单的加入和减少系统的模块,配置系统的硬件。 通过软件的修补、替换完成系统的升级和更新换代。 数据需求 用户必须先注册后再登录进入系统,系统用户的数据包括用户名、用户密码、用户在线论坛 的设计与实现 第 13 页 类型。 用户名在整个系统中是唯一的;用户浏览帖子时,数据应当包括用户名、帖子序号。 用户根据某一主题可以 发表 帖子,发表帖子需要的数据包括用户名、版块编号、版块分类名、发表帖子标题、发表帖子内容、 发表 帖子类型。 用户回复帖子的数据包括用户名、回复帖子序号、回复的内容、版块编号、版块分类名;管理员进入后台管理时,需要数据包括管理员 ID、管理员密码、管理员的类型。 管理员根据权限的不同分为普通管理员和超级管理员;版主进去后台管理时,需要的数据包括版 主名、版主密码、子版块名、版块编号。 数据录入和处理的准确性和实时性也非常重要。 数据的输入是否准确是数据处理的前提,错误的输入会导致系统输出的不正确和不可用,从而使系统的工作失去意义。 数据的输入来源是手工输入。 手工输入要通过系统界面上的安排系统具有容错性,并且对操作人员要进行系统的培训。 在系统中,数据的输入往往是大量的,因此系统要能迅速的处理数据。 在线论坛 的设计与实现 第 14 页 四、 系统功能模块分析与设计 系统结构 分析 图 系统 结构 图 系统 流程 分析 通过对系统需求分析可以对论坛总体流程做一个分析说明:按照角色划分,首先普通游客进入论坛主页面,可以随意浏览帖子,查看留言,但是不能发表帖子和发表留言,接下来如果普通游客想进一步发表帖子或者发表留言,可以通过用户注册按钮点击进入用户注册界面进行新用户的注册。 注册成功之后,此游客就成为本系统的普通用户,享受普通用户的权限(普通用户查询个人信息、用户发表帖子、用户发表留言、用户查看帖子、用户查看留言)。 其次本系统的管理员可以通过主页面的管理员登陆进入后台管理系统,包括用户管理、公告的管理、版块的管理。 管理员可以设 置版块管理员,版块管理员可以在前台对帖子的置顶,置精华,屏蔽等操作 前台业务模块的状态图 如图 所示 在线论坛 的设计与实现 第 15 页 论坛首页会员登录主题讨论区浏览帖子发表帖子或回复帖子输入论坛 URL 地址成功登录失败 图 前台业务模块的状态图 后台会员管理的状态图 如图 所示 登录后台管理系统会员管理模块错误页面会员删除状态会员修改状态会员权限状态数据更新页面登录成功删除请求修改请求更改权限请求登录失败 图 后台会员管理的状态图 后台论坛分类管理的状态图 如图 所示 在线论坛 的设计与实现 第 16 页 错误页面数据更新页面登录后台管理系统删除类别状态添加类别状态论坛分类管理模块登录成功删除请求添加请求登录失败 图 后台论坛分类管理的状态图 后台帖子管理的状态图 如图 所示 登录后台管理系统错误页面数据更新页面置顶贴状态删除贴状态设置精华贴状态帖子管理模块登录成功登录失败置顶贴请求删除请求设置精华贴请求 图 后台帖子管理的状态图 系统功能模块设计 根据系统流程分析,以及针对系统游客、普通用户、版主、管理员等角色划分以下功能模块: 用户注册 : 根据用户输入的注册信息 , 系统进行错 误检测 , 并返回信息提示用户。 在线论坛 的设计与实现 第 17 页 用户登录: 提供登录界面,验证用户名和密码,判断是否为合法用户。 信息显示: 可以查看讨论区的文章,以及回复的帖子的内容。 信息操作: 可以发表主题帖子 、 回复帖子 、 修改帖子 、 删除帖子 、 置顶帖子 、 置精华帖,屏蔽帖子等。 并对不同的用户给予不同的权限。 后台 管理: 修改用户个人信息 、 设置版主 、 删除用户 、 添加版块 、 公告管理。 系统功能模块图如图 所示 图 系统功能模块图 在线论坛 的设计与实现 第 18 页 五、 系统数据库设计 数据库 需求 分析 根据系统的需求,数据库中需要创建以下数据表。 ① 用户信息表:用于存放注 册用户的资料以及用户登录情况。 ② 帖子模块 信息表: 论坛 的主要 模块,和模块信息的描述。 ③ 帖子 信息表:记录用户发布 帖子 的信息。 ④ 公告 表:用于记录 论坛公告。 ⑤ 用户类型 表:用于 用户的类型,如管理员,普通用户,模块管理员。 实体 关系分析 实体模型分析 ER 模型是对现实世界的一种抽象。 它的主要成分是实体、联系和属性。 使用这三种成分,我们可以建立许多应用环境的 ER 模型。 本系统的 实体和属性的定义如下: 用户表 (用户 ID、用户密码、用户昵称、 性别 、 用户电子邮箱。基于java的在线论坛的设计与实现(编辑修改稿)
相关推荐
9 登录密码 8 del varchar 49 是否被删除 大 学毕 业 设 计 论 文 11 表 t_tea评分教师信息表 ID 字段名称 字段类型 字段长度 主键 备注 1 tea_id int 12 主键 2 tea_bianhao varchar 49 教师编号 3 tea_realname varchar 49 真实姓名 4 tea_sex varchar 49 性别 5
如 JDBC)。 . Tomcat 概述 Tomcat 是一个免费的开源的 Serlvet 容器,它是 Apache 基金会的 Jakarta 项目中的一个核心项目,由 Apache, Sun 和其它一些公司及个人共同开发而成。 由于有了 Sun的参与和支持,最新的 Servlet 和 Jsp 规范总能在 Tomcat中得到体现。 Tomcat 被 JavaWorld杂志的编辑选为 2020
于诸如 knight[90]这样不变化的位棋盘的初始化,将在 “伪着法生成 ”章节详述。 此处叙述走棋过程中随棋局变化的诸多位棋盘的初始化及相关操作。 首先,初始化 “BitBoard bitMask[90]”数组: BitBoard b = new BitBoard(0,0,1)。 for (int c = 0。 c 90。 c ++) { mask[c] = (b,c)。 } 其次,用一个叫
7 进行开发。 (4) 集成开发工具 Eclipse+MyEclipse 是目前最流行的 Java 集成开发工具。 Eclipse 一经出现就以其快速、丰富的特性赢得了认可,其主要的属性有快速的性能、重构性能、快速修复错误、调整/组织导入包、弹出窗口进行代码自动装配。 由于功能强大, Eclipse 一度成为 Java IDE 领域的霸主。 它能够很好地与 MySQL、 Tomcat 进行集成。
特效。 另外,它封装的 Ajax功能也是非常简便易用,功能强大。 JQuery提供了丰富的API 供开发者使用,利用它 可以很轻松的开发出强大的 web 系统。 3 Eclipse 开发工具简介 Eclipse 是一种功能强大的集成开发工具,主要用于 java 语言的开发。 它提供了丰富的快捷键,让开发者可以利用纯键盘进行快速的 编程。 Eclipse 允许开发者在其提供的 API
Hibernate。 在结构上, MyEclipse 的特征可以被分为 7 类: 1. JavaEE 模型 2. WEB 开发工具 3. EJB 开发工具 4. 应用程序服务器的连接器 5. JavaEE 项目部署服务 6. 数据库服务 7. MyEclipse 整合帮助 对于以上每一种功能上的类别,在 Eclipse 中都有相应的功 能部件,并通过一系列的插件来实现它们。 MyEclipse