基于jsp技术的论坛设计与实现.doc_第1页
基于jsp技术的论坛设计与实现.doc_第2页
基于jsp技术的论坛设计与实现.doc_第3页
基于jsp技术的论坛设计与实现.doc_第4页
基于jsp技术的论坛设计与实现.doc_第5页
已阅读5页,还剩95页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

论文题目论文题目 基于 JSP 技术的论坛设计与实现 姓姓 名名 邹凡星邹凡星 学学 院院 大连东软信息技术职业学院大连东软信息技术职业学院 专专 业业 软件技术软件技术 指导教师指导教师 邓丽邓丽 副教授副教授 备备 注注 2011 年年 6 月月 10 日日 基于 JSP 技术的论坛设计与实现 作者姓名: 邹凡星 指导教师: 邓丽 副教授 单位名称: 计算机科学与技术系 专业名称: 软件技术 大连东软信息技术职业学院 2011 年 6 月 Designing and Implementation of Forum Based on JSP Technique by Zou Fanxing Supervisor: Associate Professor Deng Li Dalian Neusoft Institute of Information Technology June 2011 - 毕业设计(论文)任务书毕业设计(论文)任务书 毕业设计(论文)题目:毕业设计(论文)题目: 基于 JSP 技术的论坛设计与实现 设计(论文)的基本内容:设计(论文)的基本内容: 论坛又名网络论坛 BBS,全称为 Bulletin Board System(电子公告板) 或者 Bulletin Board Service(公告板服务) 。是 Internet 上的一种电子信息 服务系统。它提供一块公共电子白板,每个用户都可以在上面书写,可 发布信息或提出看法。它是一种交互性强,内容丰富而即使的 Internet 电 子信息服务系统。用户在 BBS 站点上可以获得各种信息服务,发布信息, 进行讨论,聊天等等。早期的 BBS 与一般街头和校园内的公告板性质相 同,只不过是通过来传播或获得消息而已。一直到开始普及之后,有些 人尝试将苹果计算机上的 BBS 转移到个人计算机上,BBS 才开始渐渐普 及开来。近些年来,由于爱好者们的努力,BBS 的功能得到了很大的扩 充。 毕业设计(论文)专题部分:毕业设计(论文)专题部分: 题目:题目: 设计或论文专题的基本内容:设计或论文专题的基本内容: 学生接受毕业设计(论文)题目日期学生接受毕业设计(论文)题目日期 第第 1 周周 指导教师签字:指导教师签字: 2010 年年 12 月月 2 日日 大连东软信息技术职业学院毕业设计(论文) 摘要 - 基于 JSP 技术的论坛设计与实现 摘 要 微型计算机的普及加速了计算机网络的广泛应用和飞速发展。BBS 全称为 Bulletin Board System(电子公告板)或者 Bulletin Board Service(公告板服务) 。是 Internet 上 的一种电子信息服务系统。它提供一块公共电子白板,每个用户都可以在上面书写, 可发布信息或提出看法。它是一种交互性强,内容丰富而即使的 Internet 电子信息服务 系统。用户在 BBS 站点上可以获得各种信息服务,发布信息,进行讨论,聊天等等。 BBS (Bulletin Board System)系统以计算机系统、通信技术、数据库、网络技术等信息 技术为支撑,在信息服务领域有着日益重要的应用。 本文利用 JSP+CSS,HTML+CSS,MYSQL,JAVABEAN,JDBC 技术实现了一种 基于 B/S 模式的论坛系统,阐述了 BBS 的相关理论和开发方法,并根据本项目的实际 情况构造了论坛的基本架构。 该论坛系统主要完成了基于 JSP 技术的信息交流论坛的设计和实现,主要实现了 客户端和服务器端的动态交互。该系统包含五个模块:注册登录模块,浏览帖子模块, 发帖回帖模块,论坛管理模块,用户管理模块。论文详细的描述了模块的结构、功能 以及具体的设计过程。该论坛经测试表明其性能稳定,可广泛应用于各种网络上,作 为信息交流和人员沟通的园地。 关键词关键词:JSP, MYSQL, JAVABEAN,论坛系统。 大连东软信息技术职业学院毕业设计(论文) Abstract -III- Designing and Implementation of Forum Based on JSP Technique Abstract The microcomputer popularization has accelerated the computer network widespread application and the rapid development. BBS(Bulletin Board System)system takes information technology like computer system, communication, database, network technology and so on as the strut ,it becomes more and more important in the information service domain. This article has realized one kind of pattern forum elaborated based on the B/S by using JSP+CSS, HTML+CSS, MYSQL, JAVABEAN, JDBC technology and instructed the BBS related theory and developing methods and unifies this project the actual situation to produce the forum structure overhead construction. The forum(BBS) is mainly completed the design and realizations of information exchanges forum based on the JSP technique. And it main carry out a dynamic state between the customer and the sever. There are five molds piece: register and login the mold piece, scan the article in the mold piece, article releases and restores the mold piece, announce management mold piece, user management mold piece. The thesis has described module structure、function detailed and has designed process concretely. This forum after teacher and schoolmates test indicated its performance is stable, but widely applies to each kind if network the field which links up as the information exchange and the personnel. Key words: JSP,SQL,JAVABEAN,BBS 大连东软信息技术职业学院毕业设计(论文) 目录 -IV- 目 录 毕业设计(论文)任务书I 摘 要.II ABSTRACT.III 第 1 章 绪 论.1 1.1 课题的提出.1 1.2 开发背景.1 1.3 研究的意义.1 1.4 论文研究主要内容.2 第 2 章 关键技术介绍.3 2.1 MVC 开发模式3 2.2 系统分层结构中所用到的技术.3 2.2.1 表现层.3 2.2.2 控制层.3 2.2.3 业务逻辑层和数据持久层.3 2.3 系统中所用到的其它关键技术.3 第 3 章 系统分析.5 3.1 系统功能分析5 3.1.1 用户功能分析.5 3.1.2 管理员功能分析.5 3.2 模块需求描述5 3.2.1 注册登录功能5 3.2.2 用户浏览或修改个人信息功能.6 3.2.3 用户浏览帖子功能.6 大连东软信息技术职业学院毕业设计(论文) 目录 -V- 3.2.4 用户发新帖子功能.6 3.2.5 用户回复帖子的功能.7 3.2.6 管理员管理用户功能.7 3.2.7 管理员管理帖子功能7 3.3 系统开发环境8 3.4 可行性分析8 3.4.1 技术可行性8 3.4.2 系统安全性分析.8 第 4 章 系统设计.9 4.1 设计指导思想和原则9 4.1.1 指导思想9 4.1.2 软件设计原则9 4.2 系统功能总体设计9 4.3 系统功能详细设计.10 4.3.1 注册登录模块.10 4.3.2 直接登录模块.11 4.3.3 浏览或修改个人信息模块.12 4.3.4 浏览帖子模块.13 4.3.5 用户发帖模块.13 4.3.6 用户回帖模块.14 4.3.7 管理员管理论坛模块.15 4.3.8 管路员管理用户模块.15 4.4 数据库设计.16 4.4.1 数据库设计介绍.16 4.4.2 数据库表格设计.17 4.5 系统界面设计.18 4.5.1 首页界面设计.18 4.5.2 用户注册登录界面设计.19 大连东软信息技术职业学院毕业设计(论文) 目录 -VI- 4.5.3 欢迎界面设计.20 4.5.4 用户查看个人信息界面设计.20 4.5.5 用户浏览帖子界面设计.21 4.5.6 管理员界面设计.22 第 5 章 系统实现25 5.1 基于 JSP、JAVABEAN、SERVLET 的 MVC 架构25 5.1.1 编写控制器 Servlet25 5.1.2 编写模型层 Javabean25 5.1.3 编写 JDBC26 5.1.4 配置成功.26 5.2 系统逻辑功能的实现26 5.3 数据库的实现32 第 6 章 系统测试33 6.1 系统测试方法介绍.33 6.2 具体测试34 第 7 章 结 论35 参考文献36 致 谢37 大连东软信息技术职业学院毕业设计(论文) 第 1 章 绪论 -1- 第 1 章 绪 论 1.1 课题的提出 我们学院是中国第一所“笔记本大学”拥有丰富的网络资源而且为每一位学生都 配备一台笔记本,这些都极大的方便了我们的生活。这给了论坛系统一个极大的实现 价值,希望这个系统能够方便同学们和老师们的工作和生活。 1.2 开发背景 近几年来,借鉴发达国家的成功经验,结合我国的实际情况,伴随着网络应用的 不断扩大,远程教育和虚拟大学的出现,网络应用正不断深入人心。人们迫切要求通 过论坛系统在线上获得帮助,来提高工作的效率,于是许多基于 JSP 技术的论坛系统 应运而生,高等学校,企事业单位也都纷纷组织研究此类应用的解决方案,并研制开 发了大量的不同类型的计算机论坛系统。有力地推动了我国网络论坛技术的发展,并 积累了大量有价值的经验。 1.3 研究的意义 现今的社会是一个信息飞速发达的社会,其中在信息的交流当中,互联网占据着 一个非常重要的位置。人们可以通过在互联网桑收到最新的消息,也可以通过互联网 进行信息的交流。而论坛就是大家进行信息交流的其中一个渠道。论坛是一种在 Internet 网上开放的信息服务系统,通过论坛用户可是方便的实现信息的交换和文件的 共享。进入二十一世界,随着计算机科学的发展,论坛网站和数据库技术在 Internet 中 的应用越来越广泛,为广大网络用户提供了更加周到和人性化的服务。网络与人们的 工作、生活和学习的关系越来越密切,在人们的生活中起着不可替代的作用。 网上论坛起源于 20 世纪 80 年代初。最初,论坛只是用户发布公告信息、讨论问 题的在线交流平台,后来,随着网络的普及,论坛的功能越来越丰富,受到广大网民 的欢迎。同时,在线技术支持的在线服务也在论坛中开展起来。随着 Web 技术的发展, Web 内容从一些静态页发展到内容丰富的动态页。JSP 就是一种完全与平台无关的开 发新技术,它集极高的运行效率,较短的开发周期,超强的开发周期,超强的扩展能 力,完全开放的技术标准,自由的开发方式等从多完美特性于一身。JSP 的设计目的是 使构造基于 Web 的应用程序更加容易和快捷。由于 JSP 实现了 Web 动态内容与现实分 离,脱离了硬件平台的束缚,并且编译后极大的提高了运行速度,因此,JSP 正逐渐形 成为互联网上的主流开发工具。 大连东软信息技术职业学院毕业设计(论文) 第 1 章 绪论 -2- 随着时间的推移,论坛站点中积存了丰富的信息资源,不但有各类技术资料和新 闻文档,还包含着用户的判断和评论,论坛站点已成为 Web 信息库的重要组成部分, 自网上论坛诞生 20 多年以来,随着 Web 技术的发簪,已经由原来简单的电子公告板 系统发展为功能丰富的网上论坛和虚拟社区模式。各种论坛随着网络迅速发展,几乎 充实着生活工作的每一个方面,无论是商界、政界、还是娱乐界,都有各种论坛。在 这里,主要介绍了基于 JSP 技术的网上论坛。 1.4 论文研究主要内容 本论文第一章是绪论,主要介绍了网上论坛的研究意义;第二章是相关技术介 绍,着重介绍了 JSP 技术、SQL 语言、JAVASCRIPT,MVC 模式。第三章是系统需求 分析,着重分析该系统要完成的功能以及系统体系结构和系统的设计思想;第四章系 统概要设计,主要是对要实现的功能做一个简单的说明,以及系统总体结构图的设计; 第五章是系统的详细设计,其中包括了数据库的详细设计和功能实现的详细设计,是 本论文的重点。 系统使用 JSP 技术,作为表现层数据显示,用 Struts2 作为系统的控制层,用 Spring 作为业务逻辑层,来封装和管理系统中的 Service 来管理业务逻辑,同时完成对 数据持久层 JDBC Template 操作的简单封装,整合系统的框架等。 以 tomcat 作为系 统的应用服务器,来部署系统的 WEB 应用,以 Oracle 数据库来管理系统的数据资源。 大连东软信息技术职业学院毕业设计(论文) 第 2 章 关键技术介绍 -3- 第 2 章 关键技术介绍 2.1 MVC 开发模式 MVC 是一种软件架构模式。它把软件系统分为三个基本部分:模式 (Model),视 图(View)和控制器(Controller)。MVC 的目的是实现一种动态的程序设计,使后续对程 序的修改和扩展简化,并且使程序的某一部分重复利用成为可能。除此之外此模式通 过对复杂度的简化使程序结构更加直观。软件系统通过对自身基本部分分离的同时也 赋予了各个基本部分应有的功能。专业人员可以通过自身的专长分组。 2.2 系统分层结构中所用到的技术 下面分别阐述了在系统中 MVC 各层中所用到的关键技术。 2.2.1 表现层 (1)HTML 控制页面的结构。 (2)CSS 控制页面的表现样式。 (3)JavaScript 控制页面的行为,常用作为数据验证和页面的生成。 (4)JSP 技术,使用 EL 表达式和 JSTL 实现简单的逻辑和数据的显示。 2.2.2 控制层 (1)Servlet 是 MVC 模式系统的控制器: (2)将用户的请求封装为一个数据对象。 (3)根据请求的不同,调用相应的逻辑处理单元,并将数据对象作为参数传入。 (4)逻辑处理单元完成后,返回一个结果数据对象。 (5)将结果数据对象中的数据与预先设计的表现层相融合并展现给用户。 2.2.3 业务逻辑层和数据持久层 (1)Java Bean 封装所有的数据。 封装所有的数据的 Get、Set 方法。 封装数据从 MYSQL 数据库的增、删、改、查方法的调用方法。 (2)JDBC JDBC 的简单封装了连接数据库的方法以及从 MYSQL 数据库的增、删、改、查方 法,提高了开发效率。 2.3 系统中所用到的其它关键技术 在 WEB 应用容器方面用 J2EE 作为系统的容器,它主要是针对企业应用的开发。 大连东软信息技术职业学院毕业设计(论文) 第 2 章 关键技术介绍 -4- J2EE 主要包括 JSP、Servlet、Java Bean、XML 、EJB 等。目前国内的 J2EE 应用主要 集中在企业网络应用中,是目前 Java 阵营中实际应用最活跃的一个。用 tomcat 作为 WEB 应用的服务器,为 WEB 应用提供支持和服务,在数据库方面用 JDBC 来进行数 据库连接。它是一种用于执行 SQL 语句的 Java API,可以为多种关系数据库提供统一 访问,由一组用 Java 语言编写的类和接口组成。 大连东软信息技术职业学院毕业设计(论文) 第 3 章 系统分析 -5- 第 3 章 系统分析 3.1 系统功能分析 系统中主要包括用户和管理员,如图 3.1 所示。 图 3.1 用户功能用例图 3.1.1 用户功能分析 (1)用户能够注册登录。 (2)注册登录之后可以浏览帖子。 (3)用户可以查看自己的信息。 (4)用户可以修改自己的信息。 3.1.2 管理员功能分析 (1)管理所有的用户信息,包括增删改查。 (2)管理所有的帖子,包括增删改查和移动。 3.2 模块需求描述 描述系统中各个模块的功能和需求。 3.2.1 注册登录功能 (1)注册功能说明 用户进入首页,如果有账号可以直接登录,如果没有账号需要进行账号注册。 (2)登录功能说明 验证登录者的身份,为系统提供安全防护。在登录时对用户的账号密码进行验证, 用户可以查看账号是否被占用。验证输入 2 次的密码是否相同,这些功能是通过 JavaScript 来验证的。 大连东软信息技术职业学院毕业设计(论文) 第 3 章 系统分析 -6- (3)注册登录功能的需求 系统中注册登录功能的需求见表 3.1。 表 3.1 注册功能表 功能编号功能编号功能名称功能名称功能描述功能描述优先级优先级 1注册 用户进入论坛首页后,如果没有账号需要进行注册, 点击账号注册链接进行账号注册,注册时可以验证 输入的账号是否存在,点击注册按钮后如果账号已 存在则提醒账号已存在,如果账号不存在则注册成 功 高 2登录 用户输入用户名和对应的密码,系统就会验证输入 的用户名和密码是否对应和正确,如果通过验证则 转到相应的页面,否则提示密码输入错误。 高 3.2.2 用户浏览或修改个人信息功能 ()用户浏览或修改个人信息功能的说明 用户登录之后,可以在首页查看或者修改自己注册过用户名,密码,昵称等信息。 ()用户浏览或修改个人信息功能的需求 用户查看修改用户信息的功能需求见表 3.2。 表 3.2 查看用户信息功能表 功能编号功能编号功能名称功能名称功能描述功能描述优先级优先级 1浏览个人信息 登录成功后,点击用户信息可以浏览 个人的信息。 低 2修改个人信息 在显示个人信息的表单里可以点击修 改按钮修改个人信息 低 3.2.3 用户浏览帖子功能 ()用户可以浏览帖子 用户可以在帖子列表区浏览帖子。 ()用户浏览帖子功能的需求 系统中用户浏览帖子功能的需求见表 3.3。 表 3.3 用户可以查看或者发新的帖子 功能编号功能编号功能名称功能名称功能描述功能描述优先级优先级 1 用户可以浏览相应 版块的帖子 用户登录后,可以选择版块,根据用户选择的版块 区域来显示相对应的帖子列表,用户可以浏览帖子。高 大连东软信息技术职业学院毕业设计(论文) 第 3 章 系统分析 -7- 3.2.4 用户发新帖子功能 ()用户发新帖子功能说明 用户可以在帖子列表区域添加新的帖子。 ()用户发新帖子功能的需求 用户添加新帖子的功能需求见表 3.4。 表 3.4 学生查看活动进行的状态功能表 功能编号功能编号功能名称功能名称功能描述功能描述优先级优先级 1用户可以发新的帖子 在帖子列表中,用户可以点击发新帖 链接来发新的帖子。发表成功后新的 帖子会被显示在相应版块的列表中 中 3.2.5 用户回复帖子的功能 ()用户对发帖子的人回复功能的说明 用户登浏览帖子信息的时候,可以对发帖子人提出的问题进行回复。 ()用户对发帖子的人回复功能的需求 用户对发帖子的人回复功能需求见表 3.5。 表 3.5 学生发布活动的功能表 功能编号功能编号功能名称功能名称功能描述功能描述优先级优先级 1 用户可以对发帖子 的人回复 用户点击帖子题目查看帖子信息,然后可以在回复 框里给发帖子的人留言。 低 3.2.6 管理员管理用户功能 (1)管理员管理用户功能的说明 当管理员登陆的时候可以点击管理用户,之后看到一个显示所有用户信息的列表, 管理员可以对用户信息进行更新和删除。 (2)管理员管理用户功能的需求 管理员管理试卷功能的需求见表 3.6。 表 3.6 管理员管理用户功能表 功能编号功能编号功能名称功能名称功能描述功能描述优先级优先级 1添加新用户管理员可以添加新用户高 2修改用户信息管理员可以修改用户信息高 3删除用户 管理员可以删除用户,此操作会删除 用户所有信息,请谨慎操作。 高 3.2.7 管理员管理帖子功能 (1)管理员管理帖子功能的说明 大连东软信息技术职业学院毕业设计(论文) 第 3 章 系统分析 -8- 当管理员登陆的时候还可以点击管理帖子,之后看到一个显示所有帖子信息的列 表,管理员可以对帖子信息进行更新和删除或者移到其他的版块中。 (2)管理员管理帖子功能的需求 管理员添加考试题目功能的需求见表 3.7。 表 3.7 管理员添加考试题目功能表 功能编号功能编号功能名称功能名称功能描述功能描述优先级优先级 1添加新帖子管理员可以添加新的帖子高 2修改帖子信息管理员可以修改帖子信息高 3删除帖子 管理员可以删除帖子,此操作会删除帖子的所有信 息,请谨慎操作。 高 4移动帖子 通过修改帖子的版块 ID 属性将帖子移动到其他的 版块中 中 3.3 系统开发环境 硬件环境:450*2MHZ/40G/1024MB/40G/ 软件环境:Windows + Java JDK 1.5 + Tomcat6.0 + MyEclipse + Mysql 3.4 可行性分析 3.4.1 技术可行性 (1)本系统基于 B/S 模式进行,并采用 MVC 的开发模式进行系统架构。并合理 搭配 WEB 框架,易于开发。 (2)应用成熟的 WEB 开发技术使系统易于实现。 3.4.2 系统安全性分析 系统开发框架经过精心搭建使漏洞减少,采用接口编程,使系统各部分的相互依 赖性降低,降低单元间的耦合程度。同时为系统维护带来方便。在编写各个模块时, 合理的为用户分配访问权限,提高了系统的安全性。 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -9- 第 4 章 系统设计 4.1 设计指导思想和原则 4.1.1 指导思想 (1)本系统的指导思想在于为用户提供一个信息共享的平台,和简单易用的界面 系统。 (2)系统中的逻辑处理以 MVC 的三层设计模式分层调用,分层实现需要的功能, 这样实现起来系统的耦合度降低,便于单元测试和维护。 (3)数据操作和逻辑操作分开进行,加快程序的开发。 4.1.2 软件设计原则 (1)问题界定,对于软件开发来说是至关重要的。因为任何一个软件都不是提供 单纯的独立服务。必定是为了解决某些问题而开发软件,用来更好的解决问题。因此, 问题的界定对于软件的成功开发和应用来说致关重要。 (2)基本功能实现:就是软件系统的核心体现。 (3)极端情况处理。 (4)客户体验至上:软件的主要服务对象是人。 (5)封装功能,松散变化。在面向对象的编程过程当中,我们经常会遇到“开放 封闭”原则。其实,这个原则并不只是应用于面向对象的编程。 (6)可装卸,可配置。可配置,可装卸的软件,必将是未来软件更为理想的开发 模式。这对于系统的维护,以及需求的变更适应性都是非常好的。 (7)从用户角度审视和评价软件的可用性,易用性,以及界面的友好性。 (8)软件的功能需求,与非功能需求。从功能和非功能需求两方面考虑和衡量软 件。从而进一步提高软件质量,提高市场占有率,提高软件的价值。 4.2 系统功能总体设计 系统设计以模块化的方法进行,这样使大的功能块细分为小的功能块,实现起来 容易而且便于协调和维护,具体信息如图 4.1 所示。 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -10- 图 4.1 系统功能结构图 4.3 系统功能详细设计 将系统中的各个模块分别实现。 4.3.1 注册登录模块 模块描述:浏览者进入首页后,必须先注册才可以登陆,选择用户注册后, 跳转到用户注册页面,在注册表单中用户名和密码、昵称不能为空,输入用户信息后 可以检查用户名是否被占用,信息填写之后点击注册按钮,如果用户名没有被占用, 将用户填写的信息通过逻辑层发送到数据库层,储存在数据库中,然后跳转到注册成 功页面,点击登录链接跳转到欢迎页面,否则跳转到用户名被占用请重新注册的页面。 输入:选择用户注册后显示。 输出:欢迎页面。 模块具体流程如图 4.2 所示。 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -11- 图 4.2 注册流程图 4.3.2 直接登录模块 模块描述:如果是用户登录切已经有账号了,选择用户登陆,转到普通用户登录 页面,处理从客户端发送过来的用户名和密码;由逻辑层进行逻辑转发后,发送到数 据库层,读取数据库数据来验证输入的用户名和密码是否正确,如果正确转到欢迎页 面,如果错误转到登录失败页面,如果是管理员,则选择管理员登陆,转到管理员登 陆页面,如果账号密码正确就转到系统管理页面,在页面用 JavaScript 验证限制用户输 入空值。 输入:选择用户登录或者管理员登录后显示。 输出:欢迎页面或者管理员管理页面。 模块具体流程如图 4.3 所示。 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -12- 图 4.3 登录流程图 4.3.3 浏览或修改个人信息模块 模块描述:浏览或修改用户个人的信息,包括用户名,密码,昵称等信息。 输入:登陆成功后点击用户信息显示。 输出:用户信息表单。 模块具体流程如图 4.4 所示。 图 4.4 浏览或修改个人信息流程图 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -13- 4.3.4 浏览帖子模块 模块描述:用户登录以后,在首页可以选择版块,选择之后会显示相应版块的帖 子列表。 输入:选择版块后显示。 输出:帖子列表。 模块具体流程如图 4.5 所示。 图 4.5 浏览帖子流程图 4.3.5 用户发帖模块 模块描述:用户浏览帖子的时候,可以点击发帖的链接发新的帖子,发表成功后 新的帖子会被显示在帖子列表中。 输入:点击发帖显示。 输出:填写帖子标题和内容的表单。 模块具体流程如图 4.6 所示。 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -14- 图 4.6 用户发帖流程图 4.3.6 用户回帖模块 模块描述:用户在显示帖子信息的页面中点击回复可以回帖。 输入:点击回复显示。 输出:填写回复信息的表单。 模块具体流程如图 4.7 所示。 图 4.7 用户回帖流程图 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -15- 4.3.7 管理员管理论坛模块 模块描述:管理员登陆后可以点击管理帖子,然后出现版块链接,选择版块之后 出现帖子列表,管理员可以进行修改、删除帖子以及将帖子转移到其他版块的相关操 作。 输入: 选择版块后显示。 输出: 显示帖子列表。 模块具体流程如图 4.8 所示。 图 4.8 管理帖子模块 4.3.8 管路员管理用户模块 模块描述:管理员可以添加用户,输入用户的信息,返回添加成功或者失败。管 理员可以更改用户信息,输入修改的信息,返回修改成功。管理员可以删除用户,删 除用户将会删除关于该用户的所有信息。 输入:选择要维护的信息,对信息的维护。 输出:维护信息的结果。 模块具体流程如图 4.9 所示。 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -16- 图 4.9 管理用户模块 4.4 数据库设计 4.4.1 数据库设计介绍 数据库设计是项目开发中系统设计的另一个基本环节,在这里之所以要特别强调 数据库设计的重要性,是因为数据库设计就像高楼大厦的根基一样,如果设计不好, 在后来的系统维护,变更和功能扩充时,甚至于在系统开发过程中,将会引起比较大 的问题,大量的工作将会重新进行。数据库技术是信息资源管理最有效的手段,数据 库设计是指对一个给定的应用环境,构造最优的数据库模式,建立数据库及应用系统, 有效存储数据,满足用户信息要求和处理要求。数据库结构设计的好坏将直接对应用 系统的效率及实现效果产生影响。合理的数据库结构设计可以提高数据存储的效率, 保证数据的完整性和一致性。系统规划阶段主要是确定系统的名称、范围。确定系统 开发的目标功能和性能,确定系统所需的资源,估计系统开发的成本,确定系统实施 计划及进度,分析估算系统可能达到的效益,确定系统设计的原则和技术路线等。对 分布式数据库系统,还应分析用户环境及网络条件,以选择和建立系统的网络结构。 需求分析阶段要在用户调查的基础上,通过分析,逐步明确用户对系统的需求,包括 数据需求和围绕这些数据的业务处理需求。通过对组织、部门、企业等进行详细调查, 在了解现行系统的概况、确定新系统功能的过程中,收集支持系统目标的基础数据及 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -17- 其处理方法。 概念设计阶段要产生反映企业各组织信息需求的数据库概念结构,即概 念模型。概念模型必须具备丰富的语义表达能力、易于交流和理解、易于变动、易于 向各种数据模型转换、易于从概念模型导出与 DBMS 有关的逻辑模型等特点。逻辑设 计阶段除了要把 ER 图的实体和联系类型转换成选定的 DBMS 支持的数据类型,还 要设计子模式并对其进行评价,最后为了使模式适应信息的不同表示,需要优化模式。 物理设计阶段的主要任务是对数据库中数据在物理设备上的存放结构和存取方法进行 设计。数据库物理结构依赖于给定的计算机系统,而且与具体选用的 DBMS 密切相关。 物理设计常常包括某些操作约束,如响应时间与存储要求等。系统实施阶段主要分为 建立实际的数据库结构,装入试验数据对应用程序进行测试,装入实际数据建立实际 数据库三个步骤。另外,在数据库的设计过程中还包括一些其他设计,如数据库的安 全性、完整性、一致性和可恢复性等方面的设计,不过,这些设计总是以牺牲效率为 代价的,设计人员的任务就是要在效率和尽可能多的功能之间进行合理的权衡。 4.4.2 数据库表格设计 在系统的设计中因为要有用户所以有一个用户表,要有帖子所以有一个帖子表。 用户回复帖子要将回复信息存入数据库中,所有还有一个回帖信息表 用户表主要是记录用户的信息,详见表 4.1。 表 4.1 用户表 字段名字段名数据类型数据类型键键说明说明 useridVARCHAR(10)主键用户 ID usernameVARCHAR(10)用户账号 passwordVARCHAR(10)用户密码 nicknameVARCHAR(10)昵称 sexVARCHAR(10) 性别 帖子表主要是记录帖子信息,详见表 4.2。 表 4.2 帖子表 字段名字段名数据类型数据类型键键说明说明 idINT(10)主键帖子 ID partidVARCHAR(10) 帖子版块 ID titleVARCHAR(50)帖子标题 contentVARCHAR(1000)帖子内容 responseVARCHAR(10)回复次数 looknumberVARCHAR(10)浏览次数 addtimeVARCHAR(10)发布时间 addpersonVARCHAR(10)发布者 partnameVARCHAR(10)帖子所属版块 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -18- 回帖信息表主要是记录回帖的内容,详见表 4.3。 表 4.3 回帖信息表 字段名字段名数据类型数据类型键键说明说明 idINT(10)主键帖子 ID repersonVARCHAR(10) 回帖人 recontentVARCHAR(1000)回复内容 topicidVARCHAR(10)回复内容所属帖子的 ID 4.5 系统界面设计 一个友好的用户界面还应方便用户对系统的操作使用,并且应该符合用户以往的 操作习惯或者大部分用户的操作习惯,只有这样才能使用户充分发挥主观能动性更快、 更好的学习使用该系统。下面是人机界面设计的三个原则: 户原则。人机界面设计首先要确立用户类型。划分类型可以从不同的角度,视实 际情况而定。确定类型后要针对其特点预测他们对不同界面的反应。这就要从多方面 设计分析。 信息最小量原则。人机界面设计要尽量减少用户记忆负担,采用有助于记忆的设 计方案。 帮助和提示原则。要对用户的*作命令作出反应,帮助用户处理问题。系 统要设计有恢复出错现场的能力,在系统内部处理工作要有提示,尽量把主 动权让给用户。 对于一个基于 B/S 架构的网站系统来说主页的设计很关键,整个系统我们注重的 是:易导航性、易操作性、容错性和友好的交互界面。首先在页面的风格上应保持统 一,这里采用 CSS 样式表将所有页面的字体、字号、颜色以及超级链接的样式做统一 定义。考虑到网络速度对网页界面下载时间的影响,界面设计尽量不使用大量图片。 4.5.1 首页界面设计 当浏览者首次进入论坛时,会进入首页,如图 4.10 所示。 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -19- 图 4.10 首页 4.5.2 用户注册登录界面设计 浏览者进入论坛之后,如果没有账号则需要注册账号,如果已经注册过账号了可 直接登录,如图 4.11、4.12 所示。 图 4.11 用户注册 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -20- 图 4.12 用户登录 4.5.3 欢迎界面设计 当浏览者登录成功后会进入欢迎界面,如图 4.13 所示。 图 4.13 欢迎界面 4.5.4 用户查看个人信息界面设计 浏览者在欢迎界面可以查看自己的用户信息,如图 4.14 所示。 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -21- 图 4.14 查看个人信息界面 4.5.5 用户浏览帖子界面设计 浏览者在欢迎界面可以查看帖子列表,浏览帖子内容、回帖或发新帖子,如图 4.15、4.16、4.17 所示。 图 4.15 查看帖子列表界面 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -22- 图 4.16 浏览帖子回帖界面 图 4.17 发帖界面 4.5.6 管理员界面设计 如果是管理员登录,则跳转到管理员登录页面,和朋友用户登录页面一样,登录 成功后,则跳转到管理页面,如图 4.18 所示。 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -23- 图 4.18 管理界面 管理员可以对用户和帖子进行增删改查,还可以转移帖子所属版块,如图 4.19、4.20 所示。 图 4.19 管理用户界面 大连东软信息技术职业学院毕业设计(论文) 第 4 章 系统设计 -24- 图 4.20 管理帖子界面 大连东软信息技术职业学院毕业设计(论文) 第 5 章 系统实现 -25- 第 5 章 系统实现 5.1 基于 JSP、JAVABEAN、SERVLET 的 MVC 架构 由于系统使用了 MVC 模式,所以由 Servlet 作为控制器,JDBC 连接数据库, Servlet 接收 JSP 或 HTML 提交的 action,对应到相应的 action 中,根据 action 调用的 Javabean 中封装的方法来实现相应的功能。如果有增删改查的请求时,Javabean 中的 方法会调用 JDBC 封装的方法和数据库进行交互。 5.1.1 编写控制器 Servlet 配置控制器 servlet,放入 servlets 包中,servlet 部分代码如下: package servlets; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import userInfo.ForumInfo; import userInfo.UserInfo; import java.util.ArrayList; public class UserInfoController extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException doPost(request,response); public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException request.setCharacterEncoding(“GBK“); String actionUrl=request.getServletPath(); 5.1.2 编写模型层 Javabean Javabean 有两个,放入 userInfo 包中,两个 Javabean 分别封装了关于用户的属性 和方以及关于帖子的属性和方法,部分代码如下: package userInfo; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import jdbc.JDBCBean; public class ForumInfo private String id=“; private String partid=“; private String title=“; private String content=“; private String response=“; private String looknumber; 大连东软信息技术职业学院毕业设计(论文) 第 5 章 系统实现 -26- private String addperson=“; private String addtime=“; public String getId() return id; 5.1.3 编写 JDBC 部分代码如下: package jdbc; import java.sql.*; public class JDBCBean private String driverStr=“com.mysql.jdbc.Driver“; private String connStr= “jdbc:MySQL:/localhost:3306/bbs?user=root private Connection connection=null; private Statement stmt=null; private ResultSet rs=null; /加载驱动程序 public JDBCBean() try Class.forName(driverStr); catch(ClassNotFoundException e) e.printStackTrace(); /建立与数据库的连接 private Connection getConnection() try connection=DriverManager.getConnection(connStr); catch(SQLException e) e.printStackTrace(); return connection; 5.1.4 配置成功配置成功 经过以上配置 MVC 模式的整体架构就完成了,可以编写处理的类和方法进行测试 是否成功。 5.2 系统逻辑功能的实现 当浏览者首次登陆的时候,要先进行注册,才可以查看帖子,在首页点击用户注 册链接,用户注册,直接跳转到注册页面, 在注册页面用户可以查看输入的用户名是否被占用,当点击检查用户名是否被占用链 接的时候,会调用一个 Javascript 方法,方法内容如下: 大连东软信息技术职业学院毕业设计(论文) 第 5 章 系统实现 -27- function checkName() var username=form1.username.value; if(username=“) alert(“请输入用户名“); else window.open(“checkName.action?username=“+username,“check“,“menubar=no,height=300,width=4 00,left=300,top=80“); 该方法会弹出一个窗口同时把用户名传给 Servlet,调用相应的 action, public boolean checkName() boolean exist=false; String sql=“select * from user where username=“+username+“; JDBCBean jdbc=new JDBCBean(); ResultSet rs=jdbc.ex

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论