基于jsp的社区论坛系统的设计与实现毕业论文.doc_第1页
基于jsp的社区论坛系统的设计与实现毕业论文.doc_第2页
基于jsp的社区论坛系统的设计与实现毕业论文.doc_第3页
基于jsp的社区论坛系统的设计与实现毕业论文.doc_第4页
基于jsp的社区论坛系统的设计与实现毕业论文.doc_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

分院名称 软件学院 学生学号 0811240326 长春师范学院长春师范学院 本科毕业论文 设计 本科毕业论文 设计 理工类 题 目 基于 jsp 的社区论坛系统的设计与实现 专 业 计算机科学与技术 作 者 姓 名 王炳翔 指导教师姓名 朱海泉 指导教师职称 讲师 年 月 长春师范学院本科毕业论文 设计 II 长春师范学院本科毕业论文 设计 作者承诺保证书长春师范学院本科毕业论文 设计 作者承诺保证书 本人郑重承诺 本篇毕业论文 设计 的内容真实 可靠 如果存在弄虚作假 抄袭的情况 本人愿承担全部责任 论文作者签名 王炳翔 日期 年 月 日 长春师范学院本科毕业论文 设计 指导教师承诺保证书长春师范学院本科毕业论文 设计 指导教师承诺保证书 本人郑重承诺 我已按有关规定对本篇毕业论文 设计 的选题与内容进行指导 和审核 坚持一人一题制 确认由作者独立完成 如果存在学风问题 本人愿意承担 指导教师的相关责任 指导教师签名 日期 年 月 日 长春师范学院本科毕业论文 设计 III 摘摘 要要 论坛又称作网络论坛 BBS 全称为 Bulletin Board System 也叫做电子公告 板或者 Bulletin Board Service 公告板服务 它是因特网 Internet 上的一种电子 信息服务系统 它提供一块公共的输入信息区域 电子白板 全世界任何用户都可 以在上面书写 可发布信息或提出问题等待被解决 它是一种交互性强 内容丰富更 新及时的网络电子信息服务系统 用户在 BBS 专门的站点上可以获得各种信息服务 发布信息 讨论 聊天等 早期的 BBS 与一般街头 校园内的公告板性质相同 只 不过是用来传播消息而已 随着信息技术的飞速发展 加上由于爱好者们的努力 BBS 系统的功能得到了很大的扩充 现如今 用户可以通过 BBS 随时取得各种最新 的信息 也可以通过它来和全世界所有登录的网友讨论各种有趣的话题 还可以发布 一些 朋友征集 房屋廉价转让 招聘人才 等信息招贴公告 更可以召集共同爱好 的朋友到聊天室内高谈阔论 这个精彩的天地就在身旁 只要您在一台可以访问互 联网的计算机旁 就可以进入这个神奇的交流平台 来享用它的种种服务 本套论坛的优点在于它具有强大的可扩展性和可维护性 集成了很多常用的功能 非常适合网民创建自己的中小型信息交流平台 关键词关键词 BBS 论坛 交流 网络技术 长春师范学院本科毕业论文 设计 IV Abstract Forum also known as Network Forum BBS called the Bulletin Board System also known as electronic bulletin boards or Bulletin Board Service bulletin board service it is an electronic information service system on the Internet Internet It provides a public input area whiteboard the world any user can write in the above you can publish information or ask questions waiting to be solved It is an interactive content rich update timely network of electronic information services BBS dedicated site can access information services information discussion chat etc Early BBS and generally the streets within the campus bulletin board of the same nature but is used to spread the message With the rapid development of information technology coupled with the efforts of enthusiasts the BBS system function has been greatly expanded Now the user can at any time through BBS for the latest information you can also by it and all over the world registered users to discuss various interesting topics you can also release some of the Friends Collection low cost housing for sale poster announcement of recruitment information and more may convene the common love of a friend to the chat room talk this wonderful world on the side next to the computer as long as you can in a access to the Internet you can enter this magical exchange platform to enjoy all its services Forum in this set is that it has strong scalability and maintainability and integrated a lot of commonly used functions ideal for Internet users to create their own small and medium sized information exchange platform Key Words BBS forum Exchange Network technique 长春师范学院本科毕业论文 设计 V 目目 录录 承诺保证书承诺保证书 II 摘摘 要要 III ABSTRACT V 第一章第一章 绪绪 论论 1 1 本课题的来源及研究意义 1 1 1 本课题的来源 1 1 2 本课题的研究意义 1 第二章第二章 系统分析与总体设计系统分析与总体设计 2 2 1 需求分析 2 2 2 可行性分析 2 2 3 系统结构设计与功能分析 3 2 3 1 系统结构设计 4 2 3 2 前台功能结构设计 4 2 3 3 后台功能结构设计 4 2 4 系统用途介绍 5 2 5 开发语言综述 5 2 5 1 java 编程语言 5 2 5 2 JSP 语言介绍 6 2 5 3 Struts2 框架介绍 6 2 5 4 SQL 语言介绍 7 2 5 5 html 与 CSS 网页编程语言 7 2 6 系统流程图 8 2 7 系统开发工具和运行环境 9 2 8 MySQL 数据库 9 2 8 1 JDBC 技术 9 2 8 2 MySQL 数据库介绍 10 第三章第三章 数据库设计数据库设计 11 3 1 数据库设计 11 3 1 1 关系型数据库与 E R 图 11 长春师范学院本科毕业论文 设计 VI 3 1 2 数据库表及关系建立 12 3 1 3 详细数据库及表结构设计 12 第四章第四章 系统的详细设计与实现系统的详细设计与实现 15 4 1 系统界面设计 15 4 2 前台设计 18 4 2 1 普通用户浏览 18 4 2 2 新用户注册模块 18 4 2 3 会员登录模块 19 4 2 4 密码保护模块 20 4 2 5 密码修改模块 20 4 2 6 会员资料修改 20 4 2 7 会员发表新主题模块 21 4 2 8 会员回帖模块 21 4 3 后台设计 21 4 3 1 管理员登录 21 4 3 2 会员资料管理 22 4 3 3 密码保护管理 23 4 3 4 帖子管理 23 第五章第五章 系统的测试与调试系统的测试与调试 24 5 1 测试概述 24 5 1 1 软件测试的目的 24 5 1 2 测试的环境 24 5 2 测试与调试 25 结结 论论 26 参考文献参考文献 27 附录附录 1 28 附录附录 2 30 致致 谢谢 31 长春师范学院本科毕业论文 设计 1 第一章第一章 绪绪 论论 1 本课题的来源及研究意义本课题的来源及研究意义 1 1 本课题的来源本课题的来源 当今社会正处在信息时代 先进的技术潮席卷全球 网络技术正以前所未有的 速度也铺天盖地而来 它以其独特的优势在信息化的过程中不断发展 为了给信息时 代的人们交流提供更方便的服务 无论是 QQ 论坛等聊天交流工具都逐步发展日益走 向成熟 而论坛以其独特的魅力在激烈的竞争中站据了一席之地 它结合各种先进的 软件技术造就了这个快捷 界面友好的交流系统 实现了一个功能相对齐全的网络多 功能聊天系统 世界各地的网友可以自由地提出问题以及帮助他人解决问题 或者交 流经验 随时随地可以完成一个虚拟世界的信息大互动 随着互联网日益深入我们的日常社会生活 BBS 开发技术发展至今 从 CGI 到 ASP 再到 PHP 已经日趋成熟 功能也更加丰富强大 由于携着 Sun 公司的 Java 技术 所实现的 一次编写 到处运行 的优势 使继承这一衣钵的 JSP 技术越来越受到人们 的注视 而 BBS 作为一种对外的展示窗口 进行内外信息交流 已成为大多数网络 用户的广泛需要 为了进行更好的交流 用户想就自己的专业和爱好能和其他的用户 随时随地的进行及时专业的交流 这就逐步产生了论坛 这样大家就可以在网络这个 虚拟的空间中更方便地实现交流 BBS 论坛是我们在这个时代中生活的重要交流工具 所以我选择使用 JSP Struts2 开发 BBS 论坛这一课题作为毕业设计 1 2 本课题的研究意义本课题的研究意义 本文提出了设计的是目前比较流行 常用的基于 Sturts2 框架的 B S 体系结构的 BBS 论坛 本套论坛的优点在于它具有较好的可扩展性 可维护性 常用性且非常适合 各种网民创建自己的中小型网络信息交流平台 长春师范学院本科毕业论文 设计 2 第二章第二章 系统分析与总体设计系统分析与总体设计 2 1 需求分析需求分析 1 功能性需求 开发 BBS 论坛系统的目的是为提供一个供用户交流的平台 为广大用户提供交 流经验 探讨问题的交流社区 因此 BBS 论坛系统最基本的功能首先是用户发表主 题 其次是其他用户根据主题而发表自己的观点等 另外 为了保证论坛社区交流的 整齐性和规章性 系统还专门提供用户注册和登录的功能 只有注册的用户登录后才 能够发表和回复主题 未注册者有时也叫 游客 只能浏览主题的信息 根据用户的需求及以上的简单分析 BBS 论坛需要具备前台功能和后台功能 1 系统前台功能 普通用户 未注册用户 1 新用户注册 2 浏览帖子 3 搜索贴子 论坛会员 已注册用户 1 会员登陆 2 资料修改 3 密码保护 4 找回密码 用户忘记密码 5 浏览帖子 6 搜索贴子 7 发表帖子 发表主题 8 回复帖子 9 用户注销 退出 2 系统后台功能 系统管理员 必须登陆管理页面 1 管理员资料管理 管理员信息 2 会员信息管理 会员信息浏览 删除 会员账号屏蔽 使会员只能浏览而无权发帖 3 密码管理 取消会员密码保护 4 帖子管理 主题增加和删除 帖子内容评论与删除 设置精品主题 加精处理 2 非功能性需求 1 平台限制 基于 Windows XP 系统 不需要安装任何其他软件 2 操作方式 无限制 任何网络浏览器 2 2 可行性分析可行性分析 可行性分析是在系统调查的基础上 针对新系统的开发是否具备必要性和可能性 对新系统的开发从技术 经济 社会的方面进行分析和研究 以避免投资失误 保证 新系统的开发成功 可行性研究的目的就是用最小的代价在尽可能短的时间内确定问 长春师范学院本科毕业论文 设计 3 题是否能够解决 1 技术可行性 技术上的可行性分析主要分析技术条件能否顺利完成开发工作 硬 软件能否满 足开发者的需要等 本 BBS 论坛管理系统采用了 JSP 开发语言结合 Struts2 框架并采取前最新的 Browser Server 浏览器 服务器 模式进行开发 B S 体系结构比传统 Client Server 客户机 服务器 体系结构增强了许多优点 而且又紧密的结合了 Internet Intranet 国际互联网 企业内部互联网 技术 这都是网络技术发展的大趋势 数据库服务器选用 MySQL 数据库 它能够处理相对大量数据 同时保持数据的完整 性 并提供许多高级管理功能 它的灵活性 安全性和易用性为数据库编程提供了良 好的条件 那么本系统的软件开发平台条件已基本可行 硬件方面 在电子计算机飞 速发展的今天 硬件更新的速度越来越快 容量越来越大 可靠性越来越高 价格越 来越低 其硬件平台足以满足此系统开发的各种的需要 2 经济可行性 经济可行性主要是对项目的经济效益进行评估 本系统模拟的是提供一个供网络 用户进行信息交流的平台 为广大用户提供广阔的探讨空间 但实际只是用于个人的 设计 以模拟为主 不存在过大的资金的流动 所以在经济上是可行的 3 社会可行性 随着网络技术 Internet 技术的快速发展 BBS 论坛已成为人们彼此沟通 交流 信息的主要方式和不可缺少的工具 在论坛上 人们可以对某一领域的问题进行互交 探讨 论坛上的其用户可以根据自己的经验发表意见或浏览了解信息 BBS 论坛拉近 了人们之间的距离 它早已成为人们网上生活的必备工具 所以 BBS 论坛对当今社 会的发展是比较重要的 对人们进行信息的传递也是不可或缺的 2 3 系统的结构设计与功能分析系统的结构设计与功能分析 2 3 1 系统结构设计系统结构设计 本文主要实现了基于 B S 模式的一种 JSP 结合 Struts2 框架的论坛的设计与实现 主要功能是实现客户端和客户端通过服务器的动态交互 人们通过浏览器就可以访问 各种需要的论坛主页 并且保证服务器的安全 数据库采用小巧 易用 功能强大的 的 mysql 数据库 该论坛功能较齐 除了拥有一般论坛的功能之外还加入了一些独特 的功能 如精帖子处理 强大的搜索 封账号功能等 本网站按照软件项目开发的流 程进行 对于网站开发的可行性分析 需求分析 概要设计 详细设计以及对网站的 测试都有详细的论述和实现过程 长春师范学院本科毕业论文 设计 4 用户资料操作 找回密码 搜索 帖子 查看根贴内容 用户登录 新用户注册 用户注销 退出 发表主题 回复帖子 查看自己发表的帖子 BBS 论坛前台结构 2 3 2 前台功能结构设计前台功能结构设计 普通用户 未注册用户 1 新用户注册 2 浏览帖子 3 搜索贴子 论坛会员 已注册用户 1 会员登陆 2 资料修改 3 密码保护 4 找回密码 用户忘记密码 5 浏览帖子 6 搜索贴子 7 发表主题 8 回复帖子 9 用户注销 退出 前台功能结构图如图 2 3 2 所示 图 2 3 2 BBS 前台功能结构图 2 3 3 后台功能结构设计后台功能结构设计 系统管理员 必须登陆管理页面 1 管理员资料管理 管理员信息 2 会员信息管理 会员信息浏览 删除 会员账号屏蔽 使会员只能浏览而无权发帖 3 密码管理 取消会员密码保护 4 帖子管理 主题增加和删除 帖子内容评论与删除 设置精品主题 加精处理 后台功能结构图如图 2 3 3 所示 长春师范学院本科毕业论文 设计 5 资料管理 帖子管理 会员管理 密码管理 BBS 论坛后台结构 图 2 3 3 BBS 后台功能结构图 2 4 系统用途介绍系统用途介绍 像 BBS 这种典型的后台数据库管理类型系统 拥有数据流量特别大的网络管理 任务 必须要满足使用方便 操作灵活的操作理念 本系统在设计时对用户使用满足 以下几个目标 1 采用人机对话的操作方式 界面设计美观友好 信息查看灵活 快捷 准确 直观 方便 并且数据存储安全可靠 2 全面展示系统内所有分类的帖子 并进行分页显示机制 3 为用户提供一个方便 快捷的主题信息查看功能 4 实现在线发表帖子功能 5 提供登录模块 主要用开管理员登录系统和发表帖子时的用户留下用户的一 些信息 6 用户随时都可以查看自己发表的帖子 7 对用户输入的数据 系统进行较为完善的检验 尽可能排除普遍的人为的错 误 8 对于胡乱散播非法言论等会员采取封号警告处理 9 系统运行稳定安全可靠 2 5 开发语言综述开发语言综述 2 5 1 java 编程语言编程语言 本论坛开发所使用的核心语言就是 java 语言 java 是一种可以撰写跨平台应用 软件的面向对象的程序设计语言 是由 Sun Microsystems 公司于 1995 年 5 月推出 长春师范学院本科毕业论文 设计 6 的 Java 程序设计语言和 Java 平台 即 JavaSE JavaEE JavaME 的总称 Java 技术具有卓越的通用性 高效性 平台移植性和安全性 广泛应用于个人 PC 数据 中心 游戏控制台 科学超级计算机 移动电话和互联网 同时拥有全球最大的开发 者专业社群 Java 更具备了显著优势和广阔前景 Java 语言的主要特性 1 Java 语言是简单的 Java 语言的语法与 C 语言和 C 语言很接近 Java 丢 弃了 C 中很少使用的 很难理解的 令人迷惑的那些特性 特别地 Java 语言不 使用指针 并提供了自动的废料收集 2 Java 语言是一个面向对象的 Java 语言全面支持动态绑定 而 C 语言只 对虚函数使用动态绑定 3 Java 语言是分布式的 Java 语言支持 Internet 应用的开发 在基本的 Java 应用编程接口中有一个网络应用编程接口 java net 4 Java 语言是健壮的 Java 的强类型机制 异常处理 废料的自动收集等是 Java 程序健壮性的重要保证 对指针的丢弃是 Java 的明智选择 5 Java 语言是安全的 Java 通常被用在网络环境中 为此 Java 提供了一个 安全机制以防恶意代码的攻击 6 Java 语言是体系结构中立的 它可以在实现这个 Java 平台的任何系统中运 行 7 Java 语言是可移植的 Java 系统本身也具有很强的可移植性 Java 编译器 是用 Java 实现的 Java 的运行环境是用 ANSIC 实现的 8 Java 语言是解释型的 在运行时 Java 平台中的 Java 解释器对 java 字节码 进行解释执行 执行过程中需要的类在联接阶段被载入到运行环境中 9 Java 是高性能的 与那些解释型的高级脚本语言相比 Java 的确是高性能的 10 Java 语言是多线程的 11 Java 语言是动态的 Java 语言的设计目标之一是适应于动态变化的环境 2 5 2 JSP 语言介绍语言介绍 JSP JavaServer Pages 是由 Sun 公司倡导 许多别的公司参与一起创建的一种 新动态网页技术标准 类似其他技术标准 在传统的网页 HTML 文件 htm html 中加入 Java 程序片断 Scriptlet 和 JSP 标签 构成了 JSP 网页 jsp JSP 称为 Server side Language 所以被许多人认为是未来最有发展前途的动 态网站技术之一 长春师范学院本科毕业论文 设计 7 2 5 2 Struts2 框架介绍框架介绍 Struts 2 是 Struts 的下一代产品 是在 struts 和 WebWork 的技术基础上进行 了合并的全新的 Struts 2 框架 其全新的 Struts 2 的体系结构与 Struts 1 的体系结构 的差别巨大 Struts 2 以 WebWork 为核心 采用拦截器的机制来处理用户的请求 这样的设计也使得业务逻辑控制器能够与 Servlet API 完全脱离开 所以 Struts 2 可 以理解为 WebWork 的更新产品 2 5 2 SQL 语言介绍语言介绍 SQL 是高级的非过程化编程语言 是沟通数据库服务器和客户端的重要工具 允 许用户在高层数据结构上工作 它不要求用户指定对数据的存放方法 也不需要用户 了解具体的数据存放方式 所以 具有完全不同底层结构的不同数据库系统 可以使 用相同的 SQL 语言作为数据输入与管理的接口 它以记录集合作为操作对象 所有 SQL 语句接受集合作为输入 返回集合作为输出 这种集合特性允许一条 SQL 语句 的输出作为另一条 SQL 语句的输入 所以 SQL 语句可以嵌套 这使它具有极大的灵 活性和强大的功能 在多数情况下 在其他语言中需要一大段程序实现的功能只需要 一个 SQL 语句就可以达到目的 这也意味着用 SQL 语言可以写出非常复杂的语句 SQL 语言得到了广泛的应用 如今无论是像 Oracle Sybase DB2 Informix SQL Server 这些大型的数据库管理系统 还是像 Visual Foxpro PowerBuilder 这些 PC 上常用的数据库开发系统 都支持 SQL 语言作为查询语言 2 5 2 html 与与 css 网页编程语言网页编程语言 1 html 语言的介绍 超文本标记语言 即 HTML Hypertext Markup Language 是用于描述网页文 档的一种标记语言 在 WWW 上的一个超媒体文档称之为一个页面 page 作为一 个组织或个人在万维网上放置开始点的页面称为主页 Homepage 或首页 主页中通 常包括有指向其他相关页面或其他节点的指针 超级链接 HTML 是一种规范 一 种标准 它通过标记符号来标记要显示的网页中的各个部分 HTML 之所以称为超文 本标记语言 是因为文本中包含了所谓 超级链接 点 所谓超级链接 就是一种 URL 指针 通过激活 点击 它 可使浏览器方便地获取新的网页 Html 的主要特点如下 简易性 可扩展性 平台无关性 长春师范学院本科毕业论文 设计 8 资料管理 帖子管理 会员管理 是否登 录 是 否 进入后台 后 台 首页 退 出 登录 管理员 密码管理 2 CSS 的介绍 CSS 是英语 Cascading Style Sheets 层叠样式表单 的缩写 它是一种用来表 现 HTML 或 XML 等文件式样的计算机语言 CSS 目前最新版本为 CSS3 能够真正 做到网页表现与内容分离的一种样式设计语言 相对于传统 HTML 的表现而言 CSS 能够对网页中的对象的位置排版进行像素级的精确控制 支持几乎所有的字体字号样 式 拥有对网页对象盒模型的能力 并能够进行初步交互设计 是目前基于文本展示 最优秀的表现设计语言 2 6 系统流程图系统流程图 1 BBS 论坛的系统后台流程图如图 2 6 1 所示 2 BBS 论坛的系统前台流程图如图 2 6 2 所示 浏览 查看帖子 搜索需要的贴子 查看主题内贴子 查看帖子内容 发表新帖子 回复帖子 发表主题 删除帖子 密码管理 置为精华贴 封除账号 新用户注册 是否登 录 是否登 录 提示无权操作 一 般 用 户 访问 管理员登陆 是 否 否 前 台 首 页 用 户 登录 是 修改个人信息 回复帖子 长春师范学院本科毕业论文 设计 9 2 7 系统开发工具和运行环境系统开发工具和运行环境 1 开发环境 操作系统 Windows XP 计算机硬件 Pentium 2 4G 2G 内存 80G 硬盘 开发语言 java 编程语言 网页设计器 Dreamweaver 软件编译器 MyEclipse5 0 以上均可 Web 服务器 Tomcat 5 0 以上均可 Java 开发包 JDK 1 5 以上均可 数据库 MySQL 浏览器 IE6 0 以上均可 分辨率 最佳效果为 1024 768 像素 2 运行环境 服务器端 操作系统 Windows XP Web 服务器 Tomcat 5 0 以上均可 数据库 MySQL 浏览器 IE6 0 以上均可 分辨率 最佳效果为 1024 768 像素 客户端 浏览器 IE6 0 以上均可 分辨率 最佳效果为 1024 768 像素 2 8 Mysql 数据库数据库 2 8 1 JDBC 技术技术 数据库通信接口采用 JDBC Java Database Connectivity Java 数据库连接 JDBC 是一组 API 定义了用来访问数据库源的标准 JAVA 类库 使用这种类库可以 使用一种标准的方法 方便地访问数据库资源 JDBC 是用于执行 SQL 语句的 Java 应用程序接口 由一组用 Java 语言编写的类与接口组成 在 JSP 中将使用 JDBC 来访 长春师范学院本科毕业论文 设计 10 问数据库 JDBC 是一种规范 它让各数据库厂商为 Java 程序员提供标准的数据库访 问类和接口 这样就使得独立于 DBMS 的 Java 应用程序的开发工具和产品成为可能 它的目标是使应用程序开发人员使用 JDBC 可以连接任何提供了 JDBC 驱动程序的数 据库系统 这样就使得程序员无须对特定的数据库的特点有过多的了解 从而大大简 化了和加快了开发过程 另外 JDBC 对数据库的访问也具有平台无关性 2 8 2 mysql 数据库介绍数据库介绍 MySQL 是现在流行的关系数据库中其中的一种 相比其它的数据库管理系统 DBMS 来说 MySQL 具有小巧 功能齐全 查询迅捷等优点 关键的是它是免费的 对于一般中小型 甚至大型应用都能够胜任 MySQL 具有以下特点 1 速度 毋庸置疑 对于 MySQL 来说 处理数据的速度优势是它之所以在如 今的 IT 市场上站住脚的原因之一 2 MySQL 更适宜在 Windows 环境下运行 MySQL 作为一个本地的 Windows 应用程序运行 在 NT Win2000 WinXP 下 是一个服务 在 Windows 运行中 MySQL 更加的稳定 3 MySQL 使用了线程 在不同线程之间的环境转换和访问公用的存储区域显然 要比在不同的进程之间要快得多 4 MySQL 可以适应 24 7 运行 在绝大多数情况下 你不需要为 MySQL 运行 任何清除程序 5 MySQL 在权限系统上更为完善 MySQL 允许你定义一整套的不同的数据 级 表级和列级的权限 6 由于 MySQL 4 0 2 alpha 开始支持事务的概念 因此事务对于 MySQL 不再 仅仅成为劣势 相反 因为 MySQL 保留无事务的表类型 这就为用户提供了更多的 选择 7 MySQL 的 MERGE 表提供了一个独特管理多个表的方法 8 MySQL 的 myisampack 可以对只读表进行压缩 此后仍然可以直接访问该 表中的行 长春师范学院本科毕业论文 设计 11 第三章第三章数据库设计数据库设计 3 1 13 1 1 关系型数据库与关系型数据库与 E RE R 图图 数据库的设计 数据库的设计 在程序的开发中起着非常重要的作用 它往往决定了在以后的开 发工作中怎样进行程序编码 一个合理 完整 到位的数据库设计可降低程序的复杂 性 使程序开发的过程更容易 思路更清晰 以后维护更简便 本论坛系统是一个中小型的信息网站 若考虑开发成本 用户信息量 客户需求 等问题 采用 My SQL 作为项目中的数据库 MySQL 是一种客户 服务器模式的关系型数据库 它具有很比较强大的数据完整 性 可编程性 可伸缩性 可管理性等 还具有完备的功能 MySQL 数据库可以存 储大量的数据 并对数据进行合理地逻辑布局 应用数据库对象可以对数据进行复杂 地操作 同时它也提供了 JDBC 编程接口 这样可以很方便地应用 Java 编程语言来操 作数据库 E R 模型的基本概念 E R 模型是对现实世界的一种抽象 ER 图概念化地构建实体间关系的模型 这使 得它们区别于数据库模型图 ER 图的讲求的理念是项目所有参与者能理解 ER 图 E R 图的组成 1 实体 现实世界中的事物 2 属性 事物的特性 3 联系 现实世界中事物间的关系 实体集的关系有一对一 一对多 多对多的联系 本 BBS 论坛系统的 ER 图 论坛主题 所 属 回复帖子 对应 帖子 n 1 m1 用户 管理员 浏 览 管理 m n m 1 长春师范学院本科毕业论文 设计 12 3 1 2 数据库表及关系建立数据库表及关系建立 现在依次建立表的结构 1 会员基本资料表 2 会员密码信息表 3 论坛主题表 4 论坛帖子表 对应关系 1 会员信息表和论坛主题表是一对多的关系 即一个用户可以发表多篇文章 主题和回复 2 论坛主题表和论坛帖子表是一对多的关系 在一个主题下可以有多个帖子回 复 3 1 3 详细数据库及表结构设计详细数据库及表结构设计 1 会员基本信息表 会员基本资料表中存放的是会员注册或者登陆时所需要或者记录用户的基本信息 如登陆名 密码等 会员基本信息表的建立主要是记录用户最常用的一些信息和会员 管理员之间权限控制等数据 表 3 1 user 表的结构 字段名数据类型是否为空是否主键默认值描述 user id int 100 NoYes 会员 ID 自动编号 userCode varchar 50 NoNULL 会员账号 userName varchar 50 YesNULL 会员称呼 userpass varchar 50 NONULL 会员密码 sex varchar 10 YesNULL 会员性别 email varchar 40 YesNULL 会员邮箱 identity int 10 YesNULL 会员身份 识别封号 anthony Int 4 YesNULL 会员权限 区别管理员 长春师范学院本科毕业论文 设计 13 2 会员密码信息表 会员密码信息表中存放的是会员的密码相关的信息 如生日 邮箱等 建立此表 的目的是当会员忘记密码是完整的找回密码 表 3 2 pass 表的结构 字段名数据类型是否为空是否主键默认值描述 pass idint 10 NoYesID 自动编号 userCodevarchar 50 YesNULL会员登录账号 userpassvarchar 50 YesNULL会员登录密码 birthdayvarchar 50 YesNULL会员生日 emialvarchar 50 YesNULL会员邮箱 3 论坛主题表 论坛主题表存放的是会员所发表的主题信息 包括主题名称 内容 也包括发表时 间等数据 表 3 3 title 表的结构 字段名数据类型是否为空是否主键默认值描述 title idint 2 NoYes主题 ID 自动编号 titleNamevarchar 100 YesNULL主题名称 textmediumtextYesNULL主题内容 use idInt 40 YesNULL会员 id timevarchar 30 YesNULL发表时间 4 论坛帖子表 论坛帖子表是存放的是论坛中对主题回复的信息 其内容包括帖子内容 回复时 间等数据 表 3 4 paste 表的结构 字段名数据类型是否为空是否主键默认值描述 Paste idint 2 NoYes帖子 ID 自动编号 ptextmediumtextYesNULL帖子内容 userCodevarchar 40 YesNULL会员账号 便于显示 title idInt 40 YesNULL主题 id timevarchar 30 YesNULL回复时间 长春师范学院本科毕业论文 设计 14 数据库各个表主键 外键之间的关系与联系如图所示 pass PKpass id FKuserCode userpass birthday email user PKuser id FK1userCode username userpass sex Email identity anthority paste PKpaste id ptext FK1userCode FK2title id time title PKtitle id titleName text FK1user id time 长春师范学院本科毕业论文 设计 15 第四章第四章 系统的详细设计与实现系统的详细设计与实现 3 1 2 系统界面设计系统界面设计 对于论坛这类以传递信息为主 兼容聊天功能的交流系统来说 用户界面设计起 着非常重要的作用 因为一个交互良好的界面能够加深浏览者的印象 并且吸引他们 的眼球 页面的设计和制作就是用 Dreamweaver 软件进行 用 html 语言搭好基本的框架 然后用 CSS 完成页面的美工效果 当然 在网页上加入图片也是一个重要的方法 无 论是动态图片还是静态绚烂的图片都能使页面做的引人入胜 散发出魅力 无论使用何种方法对画面中的元素进行搭配 我总结了以下几个基本原则 1 统一 是指页面设计的整体性 一致性 设计作品的整体效果是至关重要的 切勿 将部分孤立分散 那样会使画面呈现出一种纷杂凌乱的视图效果 2 联系 主要指页面和页面之间的相互关系 设计中应利用各组成部分在内容上的相 互呼应 并注意整个页面与局部页面设计风格的一致性 以便实现视觉上的连贯效果 使整个页面和各个部分组合极为融洽 浑然天成 无缝连接 3 板块 将页面分成若干板块 各板块之间在视觉上又有不同 这样可以使观者不至 于看的视觉疲惫 在信息量很多时 就要注意到将画面切割成有效的成分 分割不仅 是表现形式的需要 从某种角度来讲 分割也被视为对于页面内容的一种分类 4 协调 是指整个页面符合美的法则 使页面有艺术感 使设计更加富有生气 如果 一件视图设计仅仅是色彩 图形 线条等的随意混合 不讲求搭配的美感 那么最后 给人呈现的不但没有 生命感 而且也连基本需要传达给用户的信息也无法实现 和 谐不仅要看整体结构形式 而且要看成品形成的视觉效果是否与用户进行一种互交 满足用户的视觉感受 改善用户体验 与之形成一种沟通 让用户乏而不累 乐在其 中 在功能上 我主要提到分页处理机制 分页处理可以改善用户视觉体验 以上这些都是页面设计能否成功的关键 以下是几个主要的界面截图 长春师范学院本科毕业论文 设计 16 主界面 登录界面 长春师范学院本科毕业论文 设计 17 发帖页面 管理页面 长春师范学院本科毕业论文 设计 18 4 24 2 前台设计前台设计 4 2 14 2 1 普通用户浏览普通用户浏览 普通用户浏览就是既不是本论坛的注册会员 又不是本论坛的管理员的其他 游 客 前来访问则可以随意浏览本论坛内的任何主题和主题内的帖子 还可以搜索相关 内容的帖子 这里的 游客 称作普通用户 他没有发新主题和回复帖子的权限 也 就是说除了基本的浏览之外没有任何可使用的共能 4 2 24 2 2 新用户注册模块新用户注册模块 没有会员帐号的普通用户 可以通过此模块添加会员信息 添加成功后便成为本 论坛会员 那么下一步就可以登陆论坛 使用会员特有的功能 如修改会员基本资料 申请密码保护机制 创建新主题 发表新帖子等 页面效果如图 长春师范学院本科毕业论文 设计 19 注册部分设计原理 用户注册所使用的技术就是用 Struts2 框架所提供的前台页面的 表单标签 形如格式 将用户填好的注册信息提交到后台于 Struts2 提供 的 Action 类 后台数据处理类 也可以称作逻辑层 然后由 Action 的特有机制 经过 Struts2 底层封装后的类 结合 dao 类中的 sql 语句完成对提交数据存入数据 库的操作 注意事项 用户对信息提交时候的数据格式校验 用 javascript 实现 4 2 34 2 3 会员登录模块会员登录模块 会员可以通过此模块对论坛进行登陆 登陆后便可以使用所有的会员功能 比如发 帖回复等等 登录部分设计原理 会员登录过程就是用户将登录的信息 主要是登录账号和密码 从前台提交至后台的处理类 逻辑层 后台得到前台的数据后 将其作为参数并入 sql 语句被 jdbc 的 Statement 类的 execute 函数执行在数据库中查询 将查询的 结果由 ResultSet 类的对象传送至处理类 若查询结果和用户输入的数据匹配那么说 明用户输入正确 用户进入会用版面 如果错误系统给予提示 然后返回登录页面等 待用户下一步操作 注意事项 登录时提交时数据的格式校验 用 javascript 实现 核心代码举例 登录验证函数 public boolean checklogin String userCode String userpass int identity throws 长春师范学院本科毕业论文 设计 20 SQLException connect sql select from user where userCode userCode and userpass userpass and identity identity rs stmt executeQuery sql if rs next rs close conn close stmt close return true else rs close conn close stmt close return false 4 2 44 2 4 密码保护模块密码保护模块 密码保护 就是防备用户如果忘记密码之后还可以吧密码找回的功能 这个功能 现在广泛用于论坛系统之中 因为由于如今网络账号和密码众多 用户忘记密码也是 常有之事 页面效果图 长春师范学院本科毕业论文 设计 21 密码保护部分设计原理 密码保护申请就是把连同账号等信息一并提交至后台 然后 又后台存入数据库中 找回密码的原理就是通过用户输入数据的正确性 逐步的与数 据库中的会员信息匹配然后返回给用户所找的原始密码 注意事项 验证码的实现 用 javascript 提供的专门函数 4 2 54 2 5 密码修改模块密码修改模块 修改密码是很常用的功能 设计起来也很容易 即用户由于一些原因不使用原始 密码而重新定义的新密码的过程 实现就是将原数据库里相对应的密码修改即可 4 2 64 2 6 会员资料修改会员资料修改 对于已注册的会员在登陆后 可以通过此模块 对他们的基本资料如 会员名称 性别 邮箱等资料进行修改 这个模块也很容易实现 其原理基本与修改密码模块相似 都是根据会员账号然 后将会员新输入准备修改的细信息传入后台类 然后再数据库中进行修改 4 2 74 2 7 会员发表新主题模块会员发表新主题模块 对于已注册的会员在登陆后 便可以会员的身份使用所有被提供的功能 最主要的 就是发表一个新主题然后滔滔不绝自己的大作 发表成功后 其他登录的会员便可以本 论坛中看这个主题和主题下的内容 并等待其他会员对其回复 评价等 发表新主题部分设计原理 发主题的设计其实也很简单 共分两个步骤 长春师范学院本科毕业论文 设计 22 1 用户在前台也面将自己写的主题和主题的内容提交给后台 后台将这些数据依次存 入到数据库中 2 与此同时 页面跳转到主版面的时候后台对数据库的进行一次刷新 将刷新后的信 息重新调到页面 显示给所以用户 效果页面图示 注意事项 刷新过程中重复提交 应用 struts2 的拦截器处理 4 2 84 2 8 会员回帖模块会员回帖模块 会员除了发表主题之后还可查看其他会员发表的相关文章 并可以对任意帖子进 行回复 帖子回复原理和发表新主题相似 4 34 3 后台设计后台设计 4 3 14 3 1 管理员登录管理员登录 管理员登录部分的设计和会员登录过程的原理基本是一样的 代码编写过程也 都是大同小异 注意事项 便于区分不同权限 管理员登录界面和会员登录界面不同 页面图示 长春师范学院本科毕业论文 设计 23 点击 管理员 的超链接便可以进入登录界面 4 3 24 3 2 会员资料管理会员资料管理 会员资料管理就是管理员对所有注册的会员所有信息一览和相关的处理 这里有两个管理手段 1 将会员的注册信息全部删除 也就是该用户不再是本论坛的会员 2 对会员进行封号处理 封号处理的目的是 如果该会员经常发出内含非法内容的帖 子 先封号对其进行警告 若再无非法举动责复原 但经发现情节继续严重者直接销 毁其账号 被封号的会员只能浏览不能发表新主题 但是可以回复帖子 直到解封后 才能回复正常 封号处理是对本论坛安全性和规范性的一个特殊的设计 这样可以约 束会员对论坛的支持度 页面图示 注意事项 已被封号的会员不能再被封 正常会员不能做解封处理 标记处理 4 3 34 3 3 密码保护管理密码保护管理 密码保护管理就是取消会员对密码的保护申请 即从数据库中删除相对应的数据 长春师范学院本科毕业论文 设计 24 即可 实现起来很简单 用 SQL 语言的 delete 语句就能完成 4 3 44 3 4 帖子管理帖子管理 帖子管理模块是管理员对帖子管理的核心模块 管理员查看到帖子有不适宜发表 的内容时 可以对帖子进行删除处理 如果看到很不错的的帖子时 还可以将帖子进行 加精处理 这样做可以提高会员们的互动性和对论坛的积极性 功能结构示意图 帖子管理模块 回 复 帖 子 发 表 主 题 主 题 删 除 帖 子 删 除 帖 子 加 精 1 发表主题和回复主题 除了管理论坛 管理员和会员也能发表自己的主题和评论 其他会员的内容 回复帖子 这里实现与会员该功能原理类似 2 主题删除和帖子删除 删除操作的后台实现过程无疑是使用 SQL 语言的 delete 语 句完成对数据库的操作 值得注意的是 删除主题的时候其对于此主题所回复的 帖子是没有删除掉的 处理办法是要么点击删除主题的时候后台将所有相关回复 一并删除 要么给用管理员做一个友好提示 本系统使用友好提示 3 帖子加精 帖子加精是对帖子奖励的一种办法 其实现过程就是对字符串的操作 算法 这个方法分 2 步骤 1 从数据库找出要加精的一些标题 然后依次提交到后台 2 后台在每个待处理的原始的标题后面附加上 精 这个标志 然后完成 统一批处理 最后显示到界面上 注意事项 批处理的数组循环处理方式 预防空指针错误 在本论文附录 2 中有 详细的代码摘录 长春师范学院本科毕业论文 设计 25 第五章第五章 系统的调试与测试系统的调试与测试 5 1 测试概述测试概述 5 1 1 软件测试的目的软件测试的目的 总结软件测试的目的有一下几个方面 第一是确认软件的质量 确认软件能够完成所期望的功能 并且是以正确的方式 完成的 要衡量软件质量必须满足 1 在正确的时间用正确的的方法保质保量完成 一项工作 2 符合一些应用标准的要求 比如不同用户不同的操作习惯 工程中的 可维护性 可测试性等要求 3 质量也代表着它符合客户的需要 作为软件测试 过程 最重

温馨提示

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

最新文档

评论

0/150

提交评论