1、I信息工程学院数据库数据库应用系统开发课程设计论文题 目:Java 论坛管理系统姓 名: 专 业:计算机科学与技术 指导老师: 完成日期: 摘 要Java 论坛管理系统主要是实现在网上进行交流和学习 Java 语言,本论坛提供用户注册、发帖和回帖等论坛的基本功能,划分 J2SE、J2EE、J2ME 和开发工具的使用等版块,使用合理的管理方法管理论坛,严格保证帖子质量,为 Java 爱好者提供一个学习 Java 的好地方。本系统采用 SQL2000 作为后台数据库,使用 MVC 框架,由 Servlet 负责处理最初的请求转发到 jsp 页面显示最后的结果,JSP 页面使用 bean,系统具有很
2、好的移植性和跨平台性。关键字:Java 论坛;管理;MVC;目录1 引言 .12 数据库设计 .12.1.1 需求设计 .11、引言 .12、目标与任务 .13、阶段结果 .32.1.2 概念设计 .62.1.2.1 目标与任务 .62.1.2.2 概念模型设计 .62.1.3 逻辑设计 .92.1.3.1 目标与任务 .92.1.3.2 数据组织 .92.1.3.3 数据处理方面 .122.1.4 物理设计 .132.1.4 目标与任务 .132.1.4.2 数据存取方面 .142.1.4.3 功能模块 .142.1.5 数据库实施 .152.1.6 数据库调试与试运行 .163 收获与体会
3、 .184 存在问题与建议 .18附录 .181数据字典 .182存储过程: .203基本表: .244视图 .275参考资料 .2711 引言随着互联网的发展,网上学习和交流已成为现代人的一种时尚,论坛是提供这种环境中的重要的部分。但是多数论坛十分繁杂,管理不规范,帖子混杂,很难满足用户的需要。 本次课程设计的题目为 Java 论坛管理系统,实现了论坛的基本功能即用户的注册、用户发帖回帖、管理员管理论坛等,主要任务是完成详细的数据库的设计,为以后完整系统的设计打下坚实的基础,其它论坛扩展功能以后在实现。本次数据库设计重视数据库理论知识的学习和数据库系统的设计,对数据库的学习有中要的意义。2
4、数据库设计 2.1.1需求设计1、引言目前 Java 语言比较流行,学习 Java 的人群也特别的多。Java 语言需要学习的内容非常多,而且Java 语言也是一个不断变化的语言和完善的语言,要比较系统的学习 Java,传统的一个人学习方式很难学好 Java,上网学习和交流能比较好的解决此问题。目前的论坛比较多,但比较的繁杂,大多论坛没有规范的帖子管理,对学习 Java 没有多大的帮助。开发一个 Java 论坛管理系统就是要改变传统的学习方法和解决许多论坛管理不规范的问题。本论坛只讨论 Java 技术,严格保证帖子的质量和安全问题,提供 Java 爱好者一个良好和舒适的交流平台。本论坛具有很好
5、的教育价值,同时具有很好的可重用性,稍加改变就能作为其它的论坛。如今论坛是 Internet 中比较受欢迎的技术,是大多数网站不可缺少的一部分,所以论坛对网站的开发也非常有价值。2、目标与任务目标:通过需求分析,充分了解用户需求,明确系统的业务流程和系统的功能,完成数据流图和数据字典等内容,为以后整个系统设计提供依据。任务:处理对象:用户信息:(用户名,密码,邮箱,用户等级,发帖数,回帖数,是否删除)帖子信息:(帖子 id,版面 id 号,主题,内容,帖子等级,帖子被访问次数,所属版面,发帖时间,发帖用户)版面信息(版面 id 号,版面名称,版主名称,版面主题数)版主信息(版主名称,密码,邮箱
6、)管理员信息(管理员名,密码,邮箱)处理功能要求: 用户注册登录功能模块(用户注册以及修改注册信息)2 浏览功能模块(用户浏览版块、主题列表、查看帖子) 帖子管理功能模块(管理员编辑、删除、置顶和指定精华帖) 管理版块功能模块(管理员创建、修改和删除版块) 用户管理模块(管理员添加、删除和设置用户权限)安全性和完整性要求:安全性:论坛管理系统是提供一个交流平台,安全问题主要是防止黑客的攻击,数据库需要运行在防火墙后面。要防止非法用户访问数据库,对数据库进行修改,管理员需要进行合理的用户权限设置。(1) 论坛的用户分 4 个级别:匿名用户、普通用户、版主和系统管理员(2) 用户在未登录前只能浏览
7、论坛中的帖子,已登录的用户可以在已有的版块发布新主题和回复帖子。(3) 论坛为每个注册的用户建立个人资料,用户本人可以修改个人资料。(4) 版主除有普通用户的权限外,还可以对版面进行管理:删除、推荐、锁定帖子、解除推荐、解除锁定。(5) 论坛管理员除有版主的权限外,还可以添加、删除版块,对论坛中所有版块的属性进行编辑,对用户的所有资料进行修改和删除用户。论坛权限如下表 1:对象实体 功能方法 用户类型版块 浏览列表 注册用户版块 创建版块 管理员版块 修改版块 管理员版块 删除版块 管理员帖子 浏览列表 注册用户帖子 发帖 注册用户帖子 回帖 注册用户帖子 搜集 注册用户帖子 编辑(自己所有)
8、 注册用户帖子 编辑(全部) 管理员帖子 删除 管理员帖子 置顶 管理员帖子 指定精华 管理员用户 注册 注册用户用户 注册用户登录 注册用户用户 管理员登录 管理员用户 删除 管理员用户 指定权限 管理员实体完整性:用户信息:用户必须唯一步能为空,密码不能为空,邮箱可以为空,用户等级、发帖和回帖3由系统设置,是否删除由管理员设置。帖子信息:帖子的 id 号不能为空,帖子主题不能为空,帖子内容不能为空,帖子等级、帖子被访问的次数和发帖时间由系统设置,所属版面不能为空,发帖用户由日志提供。版面信息:版面 id 号唯一步能为空,版面名称唯一步能为空,版主不能为空版主信息:(版主名称不能为空,密码不
9、能为空,邮箱可以为空)参考完整性:版面信息中:版面参考版主信息表中的版主名,版主要么为空,要么和版主信息中的版主名相同。自定义完整性:帖子的主题长度不能超过 400 个字节,帖子的内容长度不能超过 1000 个字节。3、阶段结果(1)调查方式:1、通过询问同学征询同学的意见2、图书管查阅资料3、上网了解一些论坛提供的功能体会:需求分析需要耐心的多了解用户的要求,然后要学会分析和提取有用的材料收获:听取了许多好的建议,对系统的整体构架有了清晰的认识。(2)业务流程图4浏览者用 户注册登录浏览版块管理版块管理用户 管理帖子回帖浏览帖子搜集管理员发帖图 例 : 实体 : 处理过程: 单向处理流程 :
10、 双向处理流程图 1.1(3)数据图(DFD 图)图 例 : 数据源 : 数据加工: 单向数据流程 : 双向数据流程: 数据存储5回复帖子用 户回帖表版主相关内容检测用户版面表用户管理帖子选择版块帖 子修改用户资料显示主题帖子表帖子发帖登录版主表检测管理帖子表更新更新显示管理员检测用户管理用户检测登录 管理 等级用户表更新用户版面表更新管理版面更新显示版面用 户浏览注册用户注册览登录登录检测用户用户信息表写回检测浏览浏览版面发送帖子管理员表修改(4)数据字典。 (见附录)62.1.2概念设计2.1.2.1 目标与任务目标:将需求分析得到的用户需求抽象为信息结构,设计并生成 E_R 图。任务:设
11、计各个分 E-R 图,并消除局部 E-R 图存在的冲突,合并成基本 E-R 图特点:(1) 能真实的反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求。是对现实世界的一个真实模型。(2) 易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库的设计成功的关键。(3) 易于更改,当应用环境和应用要求改变是,容易对概念模型修改和扩充。(4) 易于向关系、网状、层次等各种数据模型转换。2.1.2.2 概念模型设计(1)设计分 E-R 图,即各子模块的 E-R 图;用 户发帖帖子回帖1 mn图 1.1 用户和帖子 E-R 图n用户(用户名,密码,邮箱,等级,发帖数,
12、回帖数)帖子(帖子 id,主题,内容,帖子等级,帖子被访问次数)发帖(发帖时间)回帖(回帖 id,帖子 i d,内容,用户名,回帖时间)7用 户m图 1.2 用户和版面 E-R 图n版 面浏览用户(用户名,密码,邮箱,等级,发帖数,回帖数)版面(版面 id 号,版面名称,版主名称,版面主题数)浏览(浏览时间)管理员m图 1.3 用户和版面 E-R 图n用 户管理管理员信息(管理员名,密码,邮箱)用户(用户名,密码,邮箱,等级,发帖数,回帖数)管理(管理行为)版面1图 1.4 用户和版面 E-R 图m帖子 从属帖子信息:(帖子 id,主题,内容,帖子等级,帖子被访问次数)版面(版面 id 号,版面名称,版主名称,版面主题数)从属(所属版面)