Bbs系统设计毕业论文.doc_第1页
Bbs系统设计毕业论文.doc_第2页
Bbs系统设计毕业论文.doc_第3页
Bbs系统设计毕业论文.doc_第4页
Bbs系统设计毕业论文.doc_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

目录 B Bb bs s 系系统统设设计计毕毕业业论论文文 目 录 摘摘 要要 I ABSTRACT II 目目 录录 III 第第 1 章章 引引 言言 1 1 1 课题的研究目的和意义 1 1 2 国内外发展状况 1 1 3 研究内容及目标 2 第第 2 章章 开开发发方方法法及及关关键键技技术术简简介介 4 2 1 开发工具与运行环境 4 2 2 主要问题及解决手段 5 2 3 关键技术简介 6 2 3 1 JSP 技术 6 2 3 2 SQL Server 数据库技术 7 2 3 3 B S 结构 9 2 3 4 Tomcat 技术 9 第第 3 章章 总总体体设设计计 11 3 1 系统机构设计 11 3 2 功能设计 12 3 3 数据库设计 13 第第 4 章章 详详细细设设计计 17 4 1 前台管理模块实现 17 4 1 1 用户注册登陆 17 4 1 2 用户发帖回帖 22 4 1 3 用户传载资料 27 4 2 后台管理模块实现 32 4 2 1 管理员管理 32 4 2 2 论坛分类管理 34 4 2 3 用户权限管理 36 4 2 4 论坛帖子管理 38 目录 4 2 5 密码修改 39 第第 5 章章 结结 论论 40 参参考考文文献献 41 致致 谢谢 43 引言 第 1 章 引 言 1 1 课题的研究目的和意义 随着计算机技术的不断发展与提高 人们深刻的认识到了其强大的功能及在 现代社会中的各个领域发挥着无可替代的重要的作用 其中计算机网络技术更是 得到了充分的应用 然而在网站设计中Web 数据库技术已然成为最为广泛应用的 网站架构的基础技术 网络提供了用户与用户之间通信交流的有效手段 利用 JSP 技术 实现Web 服务器与数据库的连接 完成对网站信息的查询与处理 由于网络具有传播信息容量大 形态多样 迅速方便且自由交互的特点 其 已发展成为新的传播媒体及交互平台 目前就有很多不同形式的网站提供人们共 享资讯 而论文中目的是介绍运用JSP 技术设计并实现论坛网站的功能 构建一 个交流平台通过互联网使用户和用户之间可以进行交流 分享各种信息 同时也 可以通过网络提出所遇到的各种问题等待他人的解答 并彼此认识 交流扩大知 识 设计实现论坛网站的主要意义在于 首先 现今 JSP 在网站设计方面有着突 出的优势 因此有必要掌握并熟练应用JSP 动态网页设计技术 其次 通过数据 库与Web 服务器连接来对网站数据进行管理 掌握不同环境的关联与应用 最后 随着网络的发展及人们对知识信息的需求不断提升 网络已成为不可忽视的资讯 来源 而论坛网站便能满足这个要求 1 2 国内外发展状况 Java Server Pages JSP 是一种基于web 的脚本编程技术 类似于网景公司 的服务器端Java 脚本语言 server side JavaScript SSJS 和微软的Active 引言 Server Pages ASP JSP 比SSJS 和ASP 具有更好的可扩展性 并且他不专属 于 任何一家厂商都可以在自己的系统上实现JSP JSP Java Server Pages 是由Sun Microsystems 公司倡导 许多公司参与 一起建立的一种动态网页设计标准 其在动态网页的建设中尤其强大而特别的功 能 JSP 与Microsoft 的ASP 技术非常相似 两者都提供在HTML 代码中混合某种 程序代码 有语言因情节是执行程序代码的能力 而事实证明 Java Servlet 是 一种开发Web 应用的理想构架 JSP 以Servlet 技术为基础 又在许多方面做了 改进 JSP 页面看起来像普通HTML 页面 但它允许潜入执行代码 在这一点上 它和ASP 技术非常相似 但是 利用跨平台运行的JavaBean 组件 JSP 为分离处 理逻辑与显示样式提供了卓越的解决方案 1 3 研究内容及目标 要求达到的目标是能够普通用户的注册登录 并在论坛网站中自由发表新帖 及浏览回复他人发表的帖子 用户可对个人信息的进行修改 管理员对论坛帖子 信息 主题信息 用户信息及权限的管理 课题主要研究并实现的内容有如下几方面 1 数据存储与数据库描述 由于论坛需要储存用户及其所发帖子的相关信息 而在论坛运行过程中这类 相关数据量会逐渐增大 因此要依据数据库来实现对这些数据的存储和管理 通常 用户要存有其注册时的ID 用户名 密码等个人信息 以方便网站的 管理 同时 论坛中的主题及帖子同样需要相应的信息数据 以方便其分类与管 理 根据上述分析 系统数据库中的主要表及其关系如下 会员信息表 用户ID 用户名 密码 姓名 性别 年龄 帖子主题表 用户ID 标题 内容 上传的附件 帖子回复表 用户ID 内容 引言 管理员表 管理员ID 用户名 密码 主表中用户的ID 属性为主键 2 用户在网站中进行的活动 这是课题的重点工作 涉及到如下内容 普通用户操作 用户可在网站中感兴趣的主题发表新帖来表达自己的观点 并通过回帖与他 人进行交流 也可浏览新闻区的帖子 在此主要涉及的问题是用户与用户之间发帖进行信息交互 准确显示出用户 所表示的帖子内容 管理员操作 对于一个论坛网站系统来说 用户之间通过发帖及回帖该进行交流 必然要 有管理员对帖子进行管理 对不规范的帖子进行删除 某些用户信息的注销及权 限的设置 后台操作 管理员对于网站本身所要进行的各种后台操作 包括对于主题的添加 删除 对于新闻区要能添加新的新关的帖子供用户浏览 开发方法及关键技术简介 第第2 2章章 开发方法及关键技术简介 1 4 开发工具与运行环境 1 开发工具 根据整个系统的开发计划 采用的开发工具是MyEclipse 结合Dreamweaver 最基本的框架搭建 并采用Java 语言进行嵌入式开发动态网站 MyEclipse 是一个开放的源代码 基于Java 可扩张的开发平台 多数人都是 将MyEclipse 作为Java 集成开发环境使用 虽然MyEclipse 使用Jave 开发 但 MyEclipse 不仅仅局限于Java 开发 还可用于其它语言开发 如C C MyEclipse 是一个框架和一组服务 它通过各种插件来构建开发的环境 因此只要提供支持 C C 插件便能进行相应的语言开发 MyEclipse 是一个IDE Integrated Developing Environment 而这个IDE 可 以允许安装第三方开发的插件来使自身的功能得到扩展和增强 而 MyEclipse 就是 其中一种有名的插件集之一 MyEclipse 将开发者常用到的一些有用的插件都集合 起来 但它是收费的 MyEclipse 最早是由IBM 开发的 后来IBM 将MyEclipse 作为一个开发的源 代码项目 献给了开源组织MyEclipse org 但仍由IBM 的子公司OTI 主要从事 MyEclipse 开发的人员继续MyEclipse 的开发 MyEclipse 为MyEclipse 提供一个大量私有和开源Java 工具的集合 这解决了 各种开源工具不一致的缺点 NitroX 是一个繁杂而强大 加速Java Web 应用开发 的工具 还包含了一个强大且能够编译所有的JSP 和Struts Web 应用的具 AppXray 这些工具解析Java 和XML 配置文件 开发方法及关键技术简介 MyEclipse 实际价值来来自包含的发布包中的大量工具 如 CCS JS HTML 的 编辑器 帮助创建EJB 和Struts 项目的向导并产生了项目的所有主要的组件如 action seesion bean form 等 还包含编辑Hibernate 配置的文件和执行SQL 语句的 工具 2 运行环境 软件环境 本系统运行在Windows 系列的操作系统上 硬件环境 对硬件环境无具体要求 1 5 主要问题及解决手段 1 数据库的连接 程序调试运行后将数据库与程序连接时 会出现与数据库连接失败的情况 此时需要为数据库安装一个sq3 的补丁 并将安全性里的登录设置为混合登录方 式 2 TOMCAT 6 0 端口设置问题 在tomcat 安装文件夹中有个conf 文件 其中有个server xml 文件 有记事本 中打开 里面有个port 8080 的代码字样 此代码表示默认的端口就是8080 但 有时此端口会出现被占用的状况 因此服务器便不能使网站正常运行 此时便要 将文件中的端口改成其它值 如 port 8099 然后重启tomcat 便可以运行程序 3 文件传载的实现 在网站中实现文件的传载 当上传文件后 如文件名是中文形式时下载文件 时会报错 通过查阅资料后发现改写下原Upload jsp 文件中的代码如 byte buff new byte 2048 int bytesRead 开发方法及关键技术简介 while 1 bytesRead bis read buff 0 buff length bos write buff 0 bytesRead catch Exception e e printStackTrace finally if bis null bis close if bos null bos close 便可解决问题 1 6 关键技术简介 JSP 技术 JSP 技术使用Java 编程语言编写类XML 的tags 和scriptlets 来封装产生动态 网页的处理逻辑 网页还能通过tags 和scriptlets 访问存在于服务端的资源的 应用 逻辑 JSP 将网页逻辑与网页设计和显示分离 支持可重用的基于组件的设计 使基于Web 的应用程序的开发变得迅速和容易 Web 服务器在遇到访问JSP 网页的请求时 首先执行其中的 程序段 然后将 执行结果连同JSP 文件中的HTML 代码一起返回给客户 插入的Java 程序段可以 操作数据库 重新定向网页等 以实现建立动态网页所需要 的功能 JSP 与Java Servlet 一样 是在服务器端执行的 通常返回给 客户端的就是一 个HTML 文本 因此客户端只要有 浏览器就能浏览 开发方法及关键技术简介 JSP 页面由HTML 代码和嵌入其中的Java 代码所组成 服务器在页面被客户 端请求以后对这些Java 代码进行处理 然后将生成的HTML 页面返回给客户端的 浏览器 Java Servlet 是JSP 的技术基础 而且大型的Web 应用程序的开发需要 Java Servlet 和JSP 配合才能完成 JSP 具备了Java 技术的简单易用 完全的 面 向对象 具有平台无关性且安全可靠 主要面向 因特网的所有特点 自JSP 推出后 众多大公司都支持JSP 技术的服务器 如IBM Oracle Bea 公司等 所以JSP 迅速成为商业应用的服务器端语言 JSP 可用一种简单易懂的等式表示为 HTML Java JSP JSP 与Microsoft 的ASP 技术非常相似 两者都提供在HTML 代码中混合某种 程序代码 有语言因情节是执行程序代码的能力 在 ASP 或JSP 环境下 HTML 代 码主要负责描述信息的显示样式 而程序代码则用来描述处理逻辑 普通的 HTML 页面只能依赖于Web 服务器 而ASP 和JSP 页面需要附加的语言引擎分析和执行 程序代码 程序代码的执行结果被重新嵌入到HTML 代码中 然后一起发送给浏览 器 ASP 和JSP 都是面向Web 服务器的技术 客户端浏览器不需要任何附加的软 件支持 1 6 1 SQL Server 数据库技术 数据库是数据库应用程序的重要组成部分 设计结构合理 功能齐全的数据 库对于提高数据库应用的开发效率和程序的性能都是非常重要的 因为数据库的 影响深远 不但对系统设计者有着极大的影响 而且也可能会在今后的应用过程 中造成不可挽回的损失 数据的正确关系到整个系统正常运作 也是系统能够正 常工作的前提条件 所以在设计过程中不但要把所必需的数据字段加到数据库中 而且要加入一些可以方便控制数据库的字段 来增加数据库的完整性和安全性 数据库的设计通常是以一个已经存在的数据库管理系统为基础的 常用的数据库 管理系同Access SQL Server Oracle 等 根据用户需求和业务流程 本系统采 用了SQL Sever 2000 数据库 开发方法及关键技术简介 对拟开发系统选用SQL Server 2000 作为后台数据库 数据库是信息管理系 统的后台 存储着所有的信息 在信息管理系统中有着很重要的地位 数据库设 计的好坏 直接影响到这个系统的运行效率 良好的数据库设计 可以提高数据 信息的存储效率保证数据信息的完整性和一致性 SQL Server 2000 是一个中 小型数据库管理系统 使用方便 功能强大 与其它数据库有良好的接口 通过SQL Server 2000 功能强大的工具 用户可以 方便的使用和管理数据库 如创建和编辑数据表 设计和使用各种查询工具进行 查询操作 设计和使用窗体 制作和打印报表 设计和使用宏 设计和使用 Web 页等 还可使用VBA Visual Basic for Application 开发高级应用程序 SQL Sever 2000 具有完整的数据库应用开发工具 用户可以方便的设计 修改 浏览 一个记录数据的基本表 可以在表数据中进行各种筛选和查询操作 可以设计和 使用各种窗体以实现数据显示和操作 可以根据表数据设计打印各种报表 可以 设计和使用宏 对表进行一系列特定的操作 SQL Server 2000 内有强大的操作向 导 为用户提供了丰富的数据库基本表模板 用户只需简单的操作就可建立数据 库中所使用的各种基本表 窗体和报表 在SQL Server 2000 中 可以设定 修 改基本表之间的关联 从而实现在多个相关表之间的关系查询 SQL Sever 2000 中的宏可以实现操作的自动化 使操作更加简单 快捷 SQL Server 2000 增强了 网络功能 用户可以轻松自如地完成网页发布等 SQL Server 2000 不仅可以处理 自身的数据库文件 还可以处理其它一些数据库系统管理软件所建立的数据库文 件 能识别DBase FoxBase FoxPro Paradox Btrieve 等数据库格式文件 并 且支持开放式数据库互连性标准 ODBC 的SQL SQL Server 2000 能与工作站 数据库服务器或主机上的各种数据库互相连接 并可用于建立客户 服务器应用程 序中的工作站部分 与其它的关系型数据库管理系统相比 SQL Server 2000 具有以下优点 1 存储文件单一 开发方法及关键技术简介 2 支持长文件名 并可以在文件名内加空格 使文件便于理解 查找 具 有 强大的网络功能 可通过网络传送数据 3 使用简便 用户无需了解编程语言 便可轻松地设计开发数据库程序 4 可以处理多种数据信息 如文本文件和其它数据库文件 1 6 2 B S 结构 B S 结构 Browser Server 浏览器 服务器模式 是WEB 兴起后的一种网络 结构模式 WEB 浏览器是客户端最主要的应用软件 这种模式统一了客户端 将 系统功能实现的核心部分集中到服务器上 简化了系统的开发 维护和使用 客 户机上只要安装一个浏览器 Browser 如Netscape Navigator 或Internet Explorer 服务器安装Oracle Sybase Informix 或 SQL Server 等数据库 浏 览器通过Web Server 同数据库进行数据交互 其大大简化了客户端电脑载荷 减轻了系统维护与升级的成本和工作量 降低了用户的总体成本 TCO B S 结构最大的优点就是可以在任何地方进行操作而不用安装任何专门的 软件 只要有一台能上网的电脑就能使用 客户端零维护 系统的扩展性非常容易 只 要能上网 再由系统管理员分配一个用户名和密码 就可以使用了 甚至可以在 线申请 通过公司内部的安全认证 如CA 证书 后 不需要人的参与 系统可以 自动分配给用户一个账号进入系统 1 6 3 Tomcat 技术 Tomcat 时一个免费开源的Servlet 容器 它是Apache 基金会Jakarta 项目中 一个核心项目 由Apache Sun 和其它的一些公司及个人共同开发而成 由于有 了Sun 的参与和支持 最新Servlet 和Jsp 规范总能在Tomcat 中得到了体现 Tomcat 被JavaWorld 杂志的编辑选为2001 年度最具有创新的java 产品 可见其 在业界的地位 开发方法及关键技术简介 与传统桌面应用程度不同 Tomcat 中应用程序是一个WAR Web Archive 文 件 WAR 时Sun 提出一种Web 应用程序的格式 与JAR 类似 也是许多文件的一 个 压缩包 这个包中的文件是按一定目录结构来组织 通常其根目录下包含有 Html 和Jsp 文件或者包含这两种文件目录 另外还会有一个 WEB INF 目录 这个目录 很重要 通常在WEB INF 目录下 有一个web xml 文件和一个classes 目录 web xml 是这个应用的配置文件 而classes 目录下 则包含编译好的Servlet 类 和Jsp 或Servlet 所依赖其它类 如JavaBean 通常这些所依赖的类也可以打 包成JAR 放到WEB INF 下lib 目录下 当然也可以放到系统CLASSPATH 中 但那 样移植和管理起来不方便 在Tomcat 中 应用程序部署很简单 你只需将你的WAR 放到Tomcat 的 webapp 目录下 Tomcat 会自动检测到这个文件 并将其解压 在浏览器中访问 这个应用的Jsp 时 通常第一次会很慢 因为Tomcat 要将Jsp 转化成为Servlet 文件 然后编译 编译以后 访问将会很快 另外 Tomcat 也提供了一个应用 manager 访问这个应用需用户名和密码 用户名和密码存储在一个 xml 文件中 通过这个应用 辅助于FTP 你可以对过Web 部署和撤销应用 开发方法及关键技术简介 第三章 总体设计 1 7 系统机构设计 本论坛网站实现用户的注册登录 浏览 发表 回复及删除帖子 网站管理 员对帖子信息及用户信息和权限的管理 对主题板块的添加及新闻作息帖的录入 论坛可提供用户与用户之间进行信息咨询的分享与交流 主要功能模块图如图 3 1 所示 总体设计 论坛网站系统 后台管理前台管理 用 户 注 册 登 陆 用 户 浏 览 信 息 用 户 发 帖 回 帖 用 户 传 载 资 料 管 理 员 登 陆 论 坛 分 类 管 理 论 坛 帖 子 管 理 论 坛 新 闻 录 入 图3 1 论坛网站系统结构图 图3 1 中显示了此论坛网站的整体系统结构 系统的总体设计思路是在网络中运行此论坛网站 用户进行注册并登陆论坛 系统对用户进行权限的验证 根据用户需求 论坛主要提供用户一个信息的交流 平台 通过在网站中发表回复帖子来实现用户间的资讯交流 并可对文件等资料 进行传载来分享资源 为了便于论坛更好的运行 管理员可对用户信息及帖子信息进行管理 同样 为了更方便用户之间的交流 管理员也可对主题进行管理 对新闻进行录入 1 8 功能设计 系统主要分为前台和后台两个管理模块 而其中包括的主要的功能分别是 用户注册登陆 用户发帖回帖 用户传载资料 论坛分类管理 论坛帖子管理等 功能 1 用户注册登陆 该功能主要实现普通用户的注册登陆的功能 注册时用 户填入具体的地址邮箱及电话等信息 并将注册时所填信息录入数据库保存以便 管理用户信息 注册成功后用户便可登录系统并在论坛中进行相应操作 2 用户发帖回帖 该功能用户可在论坛中通过发帖回帖与他人进行交流 注册账号并登陆 可以浏览论坛中新闻版块及其他用户发表的帖子 并可在个人 总体设计 感兴趣的主题中通过发帖来表达自己的观点想法或回复他人所发的帖子来交流经 验并分享信息 以扩充知识并能结交朋友 3 用户传载资料 该功能可在用户发帖是实现 当用户有好的资料后信息 想与大家分享时 便在论坛中发帖并应用此功能上传文件 将其分享给论坛中的 其他用户 其他用户也可通过回帖来发表个人对于所分享资料的感想 以此是用 户间更好的共享有益资源并进行相应的交流 4 论坛分类管理 此功能在论坛后台管理中实现 主要为论坛主题界面的 分类进行管理 论坛中为了方便管理及用户之间可以更好的交流 不同种类的帖 子应有相应的主题板块来进行管理 这样方便用户快速的找到自己想要了解的相 关信息 5 论坛新闻录入 此功能同样在论坛后台管理中实现 主要由系统管理员 在后台进行新闻帖中信息的录入 用户可在新闻资讯一项中浏览新闻信息 获得 资讯 但用户只可在此版块浏览新闻 不能进行其他操作 1 9 数据库设计 为了论坛网站更好的进行和管理 需要记录注册用户以及其所发帖子等数据 信息 所以需要建立数据库来储存相关的信息 所建数据库中各表信息如下 用于储存用户的数据信息的表t user 其中要对用户注册时所用的ID 设为主 键 由此属性项将表3 1 中的用户与表3 2 中存储的所发的帖子的数据信息进行关 联 其中还记录了用户名 密码以便用户登陆网站 以及姓名 性别 年龄等个 人信息 每个所发表的新帖同样需要记录相关信息 如标题 内容用所发的用户等数 据 由于论坛支持文件的传载 则在存储主题信息的表 3 3 中要此属性项以便实 现此功能 且每个主题模块会有不同的帖子 而所发新帖子是存在于哪个主题模 块中也是要记录的信息 这样有助于对网站进行管理 总体设计 表3 4 中储存论坛管理员的相关信息 如用户名 密码等 而新闻模块用于 普通用户浏览信息 了解资讯 此模块中的帖子信息由管理员登陆并进入后台后 录入所存信息如表3 6 中所示 表3 1 会员信息表t user 字段名类型长度小数位数主键NULL IDINT4是否 LOGINNAM E VARCHAR50否是 LOGINPWVARCHAR50否是 NAMEVARCHAR50否是 SEXVARCHAR2否是 AGEVARCHAR2否是 ADDRESSVARCHAR50否是 TELVARCHAR50否是 EMAILVARCHAR50否是 QQVARCHAR50否是 总体设计 表3 2 帖子回复表t huifu 表3 3 帖子主题表t zhuti 字段名类型长度小数位数主键NULL 字段名类型长度小数位数主键NULL IDINT4是否 TITLEVARCHAR20否否 CONTETNVARCHAR50否否 SHIJIANVARCHAR50否否 USER IDINT4否否 ZHUTI IDINT4否否 总体设计 IDINT4是否 TITLEVARCHAR50否否 CONTENTVARCHAR50否否 FUJIANVARCHAR 50否否 YUANSHIMINGVARCHAR50否否 SHIJIANVARCHAR50否否 USER IDINT4否否 CATELOG IDINT4否否 表3 4 管理员表t admin 字段名类型长度小数位数 主键NULL USER ID INT4是否 USER NAM E VARCHAR50否是 USER PW VARCHAR50否是 表3 5 论坛类别表t catelog 字段名类型长度小数位数主键NULL IDINT4是否 NAMEVARCHAR50否是 JIESHAOVARCHAR500否否 详细设计 第四章 详细设计 1 10 前台管理模块实现 1 10 1 用户注册登陆 1 功能描述 前台管理主要实现用户在论坛中所要进行的基本操作 其中主要包括用户注 册登陆 用户发帖回帖及资料的传载等功能 而这里主要介绍用户注册登陆功能 的实现 实现用户在网站注册新的账户 注册成功后用户可登陆到论坛网站中并 在论坛中进行相应操作 图4 1 论坛网站首页用户登陆界面 详细设计 图 4 2 论坛网站用户注册界面 2 程序实现 在程序userLogin jsp 中的代码段实现用户的登陆操作 用SQL 语言对数据 库中t user 表中存储的用户数据进行检索 验证所输入的用户名 密码是否在 数据库中存在 若存在则验证其是否正确 实现代码如下 public String userReg 详细设计 TUser user new TUser user setLoginname loginname user setLoginpw loginpw user setName name user setSex sex user setAge age user setAddress address user setTel tel user setEmail email user setQq qq user setType 1 user setDel no userDAO save user Map request Map ServletActionContext getContext get request request put msg 注册成功 请登录 return msg public String userLogout 详细设计 HttpServletRequest request ServletActionContext getRequest request getSession setAttribute userType null request getSession setAttribute user null this setMessage 安全退出 this setPath qiantai default jsp return succeed public String userMana String sql from TUser where del no and type 1 List userList userDAO getHibernateTemplate find sql Map request Map ServletActionContext getContext get request request put userList userList return ActionSupport SUCCESS public String userDel TUser user userDAO findById id user setDel yes userDAO attachDirty user 详细设计 this setMessage 操作成功 this setPath userMana action return succeed 3 流程图 开始 用户注册 是否成功 提示注册成功 返回首页 Y N 结束 图4 1 注册流程图 详细设计 开始 用户登录 用户名密码 是否正确 进入论坛主页 返回登录界面 Y N 结束 图4 2 登录程序流程图 1 10 2 用户发帖回帖 1 功能描述 该功能主要包括两个操作分别为 用户发表新的帖子 回复他人发表的帖子 通过这两个操作实现用户之间的交流及分享信息 用户登录论坛后 可在相应的主题模块中发表帖子来与其他用户进行交流 也可对别人发表的帖子个人感兴趣的帖子进行回复来发表自己的观点 详细设计 图4 3 用户发表新帖界面 图4 4 用户发帖后显示界面 详细设计 图4 5 论坛网站用户回帖界面 2 程序实现 在程序zhutiAdd jsp 实现发贴回帖等操作的一些前期准备 如参数的定义并 将数据库中数据与程序中的参数相关联 用myelcipse 新建回复帖子的jsp 页面huifuAdd jsp 设置页面的编码格式为urf 8 编写表单form form action zhutiAdd action name formAdd method post 输入html 控件text 一个是标题text 一个是内容text 然后是 提交表单的submit 控件 实现代码如下 public String zhutiAdd TZhuti zhuti new TZhuti zhuti setTitle title 详细设计 zhuti setContent content zhuti setFujian fujian zhuti setFujianYuanshiming fujianYuanshiming zhuti setShijian new SimpleDateFormat yyyy MM dd format new Date zhuti setUserId userId zhuti setCatelogId catelogId zhuti setDel no zhutiDAO save zhuti HttpServletRequest req ServletActionContext getRequest req setAttribute msg 发帖成功 return msg public String zhutiDel TZhuti zhuti zhutiDAO findById id zhuti setDel yes zhutiDAO attachDirty zhuti HttpServletRequest req ServletActionContext getRequest 详细设计 req setAttribute msg 成功删除 return msg public String zhutiDetail TZhuti zhuti zhutiDAO findById id zhuti setUser userDAO findById zhuti getUserId String sql from THuifu where del no and zhutiId Object c zhuti getId List huifuList huifuDAO getHibernateTemplate find sql c for int i 0 i huifuList size i THuifu huifu THuifu huifuList get i huifu setUser userDAO findById huifu getUserId zhuti setHuifuList huifuList HttpServletRequest req ServletActionContext getRequest req setAttribute zhuti zhuti return ActionSupport SUCCESS 3 流程图 详细设计 开始 登陆 登陆成功 返回登陆界面 主题版块 发表帖子 发帖成功 结束 返回发帖界面 Y N Y N 图4 3 登录程序流程图 1 10 3 用户传载资料 1 功能描述 详细设计 该功能主要在用户发帖时可上传自己所有的文件资料 以便于其他用户分享 资源信息 其他用户也可回复帖子来发表对此共享信息的意见或看法 与所发帖 的用户交流观点 用户登录论坛后 可在相应的主题模块中发表帖子 发帖的同时可在窗口中 选择上传附件来上传个人所拥有的资料与其他用户分享 上传成功后便可发表此 贴到论坛中 其他用户可浏览并回帖 图 4 7 用户传载资料界面 图 4 8 上传资料后显示界面 图 4 9 下载资料显示界面 2 程序实现 用myelcipse 新建帖子的jsp 页面zhutiAdd jsp 设置页面的编码格式为 urf 8 编写表单form form action zhuti type zhutiAdd 详细设计 name formAdd method post 输入html 控件text 一个是标题text 一个 是内容text 然后是提交表单的submit 控件 再在upload jsp 中由form 构建表 单框架 用java script 语言嵌入到发表帖子的html 中 实现发帖时可进行文件 上传此功能 定义变量使其与数据库中的数据关联 实现代码如下 public String upload String newFujianName new Date getTime fujianFileName substring fujianFileName indexOf String dstPath ServletActionContext getServletContext getRealPath upload newFujianName File dstFile new File dstPath copy this getFujian dstFile Map request Map ServletActionContext getContext get request request put newFujianName newFujianName request put oldFujianName fujianFileName request put fujianPath upload newFujianName return ActionSupport SUCCESS private static void copy File src File dst 详细设计 InputStream in null OutputStream out null try in new BufferedInputStream new FileInputStream src BUFFER SIZE out new BufferedOutputStream new FileOutputStream dst BUFFER SIZE byte buffer new byte BUFFER SIZE int len 0 while len in read buffer 0 out write buffer 0 len catch Exception e e printStackTrace finally if null in try 详细设计 in close catch IOException e e printStackTrace if null out try out close catch IOException e e printStackTrace 1 11 后台管理模块实现 1 11 1 管理员管理 1 功能描述 后台管理主要实现管理员对论坛中用户用帖子信息的管理 其中主要包括论 坛分类管理 论坛管理员管理等功能 即管理员用户登陆论坛后进入可后台进行用 详细设计 户信息 帖子信息及主题版块设置的管理 同时管理员可在后台录入新闻信息供 论坛用户浏览 而在这里介绍管理员管理功能 后台为只有拥有管理员权限的用 户才可以进入管理 要在程序中先构建系统框架 图 4 10 论坛网站后台管理界面 2 程序实现 在程序login jsp 搭建管理员的框架并实现管理员对论坛的管理操作等功能 的一些前期准备 如参数的定义并将数据库中数据与程序中的参数相关联 实现页面login jsp 用myelcipse 新建管理员登陆的jsp 页面login jsp 设 置页面的编码格式为urf 8 编写表单form form action login name form method post 输入html 控件text 密码框控件password 然 后是提交表单的submit 控件 详细设计 实现代码如下 public String login String userName String userPw int userType System out println userType userType try Thread sleep 700 catch InterruptedException e e printStackTrace String result no if userType 0 系统管理员登陆 String sql from TAdmin where userName and userPw Object con userName trim userPw trim List adminList adminDAO getHibernateTemplate find sql con if adminList size 0 result no else WebContext ctx WebContextFactory get HttpSession session ctx getSession TAdmin admin TAdmin adminList get 0 session setAttribute userType 0 session setAttribute admin admin result yes 详细设计 1 11 2 论坛分类管理 1 功能描述 此功能在论坛后台管理中实现 主要为论坛主题界面的分类进行管理 论坛 中为了方便管理及用户之间可以更好的交流 不同种类的帖子应有相应的主题板 块来进行管理 如 java cs 编程 j2ee 编程 JSP 技术 数据库技术等模块 这样方便用户快速的找到自己想要了解的相关信息 图 4 11 论坛类别界面 图 4 12 论坛类别添加 2 程序实现 详细设计 在catelogMana jsp 中实现论坛类别的管理 此功能构建了论坛的版面 在 catelogAdd 类中定义所需要变量 利用getParameter 与数据库表中的属性进行 关联 构建论坛类别管理的主要框架 实现代码如下 public String catelogAdd TCatelog catelog new TCatelog catelog setName name catelog setDel no catelogDAO save catelog this setMessage 操作成功 this setPath catelogMana action return succeed public String catelogMana String sql from TCatelog where del no List cateLogList catelogDAO getHibernateTemplate find sql Map request Map ServletActionContext getContext get request request put cateLogList cateLogList return ActionSupport SUCCESS public String catelogDel TCatelog catelog catelogDAO findById id catelog setDel yes catelogDAO attachDirty catelog this setMessage 操作成功 详细设计 this setPath catelogMana action return succeed 1 11 3 用户权限管理 1 功能描述 点击左侧的论坛管理员菜单 实现对论坛管理员的管理 2 程序实现 编写jsp 页面lutanGuanliyuaAdd jsp 输入表单form 表单接受输入的数据 Submit 提交按钮完成数据的传送 实现代码如下 public String lutanGuanliyuanAdd TUser user new TUser user setLoginname loginname user setLoginpw loginpw user setType 100 user setDel no 详细设计 userDAO save user this setMessage 操作成功 this setPath lutanGuanliyuanMana action return succeed public String lutanGuanliyuanMana String sql from TUser where del no and type 100 List lutanGuanliyuanList userDAO getHibernateTemplate find sql Map request Map ServletActionContext getContext get request request put lutanGuanliyuanList lutanGuanliyuanList return ActionSupport SUCCESS public String lutanGuanliyuanDel TUser user userDAO findById id user setDel yes 详细设计 userDAO attachDirty user this setMessage 操作成功 this setPath lutanGuanliyuanMana action return succeed 1 11 4 论坛帖子管理 1 功能描述 论坛管理员用超级管理员分配的账号和密码登陆系统 实现论坛帖子的管理 删除帖子等操作 2 程序实现 实现代码如下 public String zhutiDel 详细设计 TZhuti zhuti zhutiDAO findById id zhuti setDel yes zhutiDAO attachDirty zhuti HttpServletRequest req ServletActionContext getRequest req setAttribute msg 成功删除 return msg 1 11 5 密码修改 1 功能描述 实现管理员对密码的修改 管理员登陆系统后台进入密码修改模块 可使管 理员进行密码修改 2 程序实现 在userPw jsp 中adminPwEdit 实现用户密码的修改 在这里用到了DWR 框架 中的API 即WebContext ctx WebContextFactory get 具体的说 这里用 到了WebContext 和WebContextFactory 两个类 而这两个类的作用便是为程序提 供访问标准HttpServlet 对象的入口 现代码如下 public String adminPwEdit String userPwNew try 详细设计 Thread sleep 700 catch InterruptedException e TODO Auto generated

温馨提示

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

评论

0/150

提交评论