jsp技术实现论坛及优化毕业论文(编辑修改稿)内容摘要:

系统基本信息 综合以上分析,要实现上面的所有功 能模块,数据库共要设计四个表,它们分别是: 1. 用户表 (user): userId、 userName、 password、 head、 registerTime、role 2. 板块表( channel): channelId、 channleName、 userId 3. 主题表( topic): tiopcId、 title、 content、 publishTime、 modifyTime、userId、 channelId 4. 回复内容表( reply): replyId、 title、 content、 publishTime、modifyTime、 userId、 topicId 系统层次图 通过参考网上比较出名的论坛和查询相应的资料,大体了解了论坛系统的基本流程,因此设计了用户层次流 程图。 用户层次图如图 31 所示: 12 图 31 用户层次图 13 数据库概念结构设计 概念设计阶段主要是将需求分析阶段得到的用户需求抽象为信息结构(概念模型)的过程,它是整个数据库设计的关键,包括概念模型设计和新系统流程两个阶段。 在需求分析阶段所得到的应用需求应该首先抽象为信息世界的结构,才能更好地、更准确地用某一 DBMS 实现这些需求。 概 念数据模型独立于具体的数据处理的细节和数据库管理系统。 这次设计仍采用传统的实体联系图作为概念设计的工具。 再进行优化后,尽量满足结构清晰、关联简洁、实体个数适中、属性分配合理、没有低级冗余。 系统 ER图如图 32 所示: 图 32 系统 ER图 14 数据库逻辑结构设计 对于关系型数据库,数据库的概念结构设计完毕后,要把 ER图描述的概念数据模型转换为等价的关系模式极其约束。 逻辑设计的基本工作主要包括如下的 3 个步骤。 论坛系统数据流设计模式 该设计以概念结构设计中的 ER图为主要依据,这几出相关的整体逻辑结构。 系统数据流设计如图 33 所示: 图 33 系统数据流设计图 完整性设计 完整性要求用于描述各种信息之间的制约关系,以及关联关系,各个数 15 据项的取值范围以及各个数据项是否可以取值。 根据实际需要,采取一定的手段来满足用户的完整性需求。 域完整性约束要求属性值必须在域中。 实体完整性约束要求主键必须唯一且不能为空。 如用户信息表中的用户名设置为主键,并且要求唯一且不能为空。 以满足规范,从而避免产生插入异常、删除异常、更新异常。 数据库表设计 用户表 如表 31 所示: 表 31 用户信息表 (user) 字段名 类型(值) 说明 UserID(主键) Int(10) 用户 ID UserName varchar(30) 用户名 password varchar(30) 用户密码 head varchar(50) 用户图像 registerTime datetime 注册时间 role int 用户角色 主题信息表如表 32 所示: 表 32 帖子信息表( topic) 字段名 类型(值) 说明 topicId(主键) Int(10) 主题 ID title Varchar(128) 主题标题 Content Varchar(10000) 主题内容 publishTime datetime 发表日期 modifyTime Varchar(20) 修改时间 userId Int(10) 作者 channelId Int(255) 板块 ID 16 回复信息表如表 33 所示: 表 33 回复信息表( reply) 字段名 类型(值) 说明 ReplyID(主键) Int(10) ID content Varchar(5000) 回复内容 Titile Int(10) 标题 publishTime Varchar(20) 回复时间 modifyTime Datetime 修改回复时间 userId int 用户 id topicId int 主题 id 版块表如表 34 所示: 表 34 版块表( channel) 字段名 类型(值) 说明 channelId(主键) int 版块 id channelName varchar(30) 版块名称 userId int 版主姓名 17 第 4 章 论坛系统实现 系统各部分的实现方法 从系统功能模块划分中可以看出,系统总体上有 4 个功能模块组成。 各模块虽然是独立的,但又统一于同一数据库中,便于管理员管理维护数据库,同时也便于管理员和用户的操作。 在介绍系统各模块的实现方法之前,首先介绍系统与数据库的连接方式 —— 使用 JavaBean 连接连接在服务器 tomcat里配置的连接池。 再介绍系统主要部分的实现方法。 创建与数据库的连接 配置数据源创建连接池,再通过 JavaBean 连接到数据源再对数据库进行操作。 连接池是创建和管理一个连接的缓冲池的技术,这些连接准备好被任何需要它们的线程使用。 连接池可以极大的改善用户的 Java 应用程序的性能,同时减少全部资源的使用。 连接池主要的优点有:减少连接创建时间、简化的编程模式、受控的资源使用。 连接池能够使性能最大化,同时还能将资源利用控制在一定的水平之下,不过如果超过该水平,应用程序将崩溃而不仅仅是变慢。 配置连接池: Public cfinal static String DRIVER_CLASS =。 // 数据库 java 驱动 public final static String CONNECTION_URL =jdbc: :2433。 DatabaseName=jspbbs。 //jdbc:microsoft::2433。 DataBaseName=jspbbs。 // 连接字符串 public final static String USER = jspbbs。 // 数据库用户名 public final static String PASSWORD = 12345678。 // 数据库密码 /** * 得到数据库连接 用 Java 驱动 * * @return 数据库连接 */ 18 public Connection getConnection() { Connection connection = null。 try { (DRIVER_CLASS)。 // 注册驱动 connection = (CONNECTION_URL, USER, PASSWORD)。 // 获得数据库连接 } catch (ClassNotFoundException e) { ()。 } catch (SQLException e) { ()。 } catch (Exception e) { ()。 } return connection。 // 返回连接 } 访问数据库的 JavaBean JavaBean 是一种 Java 语言写成的可重用组件。 为写成 JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。 JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成为属性。 众所周知,属性名称符合这种模式,其他 Java 类可以通过自省机制发现和操作这些 JavaBean 属性。 用户可以使用 JavaBean 将功能、处理、值、数据库访问和其他任何可以用 Java 代码创造的对象进行打包,并且其他的开发者可以通过内部的 JSP页面、 Servlet、其他 JavaBean、 Applet 程序或应用来使用这些对象。 用户可以认为 JavaBean 提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。 JSP 的一个重要特性就是可以用 JavaBean 实现功能的扩展。 将大部分功能放在 JavaBean中完成,以使 JSP页面程序更干净简洁、利于维护。 JavaBean可以很方便的用来捕获页面表单的输入并完成各种业务逻辑的处理。 连接数据库的 JavaBean—— DbHelper。 通过 JSP页面调用此 JavaBean, 19 可以实现对数据库的连接,数据表的添加、删除、更新等操作。 用户及管理员登录模块页 面 用户登录页面比较简单,因为用户不登录就可以浏览帖子,所以登录的功能就直接增加到了头文件里,用户没有登录时,此模块将一直显示。 如果登录。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。