基于JSP的BBS专题论坛系统_第1页
基于JSP的BBS专题论坛系统_第2页
基于JSP的BBS专题论坛系统_第3页
基于JSP的BBS专题论坛系统_第4页
基于JSP的BBS专题论坛系统_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

目目 录录 绪 论.1 第 1 章 专题论坛系统开发背景及意义.2 1.1 系统开发背景 2 1.2 系统开发意义 3 第 2 章 专题论坛系统需求分析.4 2.1 现状分析 4 2.2 可行性分析 4 2.2.1 经济可行性.4 2.2.2 技术可行性.4 2.3 设计目标 5 2.4 功能要求 5 2.5 平台选择 5 2.6 系统开发工具 6 2.6.1 开发语言JSP(Java Server Page)6 2.6.2 数据库MySQL5.0.7 第 3 章 专题论坛系统设计.8 3.1 数据库设计 8 3.1.1 数据库需求分析.8 3.1.2 数据库概念结构设计10 3.1.3 数据库逻辑结构设计11 3.2 系统结构设计 .15 3.2.1 页面模块化设计15 3.2.2 MVC 模式设计(Jsp+Servlet+JavaBean)17 第 4 章 专题论坛系统实现18 4.1 系统各部分的实现方法 .18 4.1.1 创建与数据库的连接18 4.1.2 访问数据库的 JavaBean .19 4.1.3 用户及管理员登录模块页面20 4.1.4 系统首页模块页面22 4.1.5 会员注册模块的实现页面24 第 5 章 系统测试与评价分析26 5.1 测试环境简介 .26 5.2 系统各模块的测试 .26 5.2.1 管理界面测试26 5.2.2 其它管理模块测试26 5.3 系统的评价分析 .27 5.4 系统的不足与展望 .27 结束语.28 致 谢29 参考文献.30 毕业设计 (论文) 第 1 页 绪 论 自我国正式进入互联网时代以来,短短的几年时光互联网在我国得到了飞 速的发展。目前它已经成为全球性信息传输的重要途径之一,并被喻为信息高 速公路。这不仅表现在互联网的基础设施方面,也表现在互联网的用户人数、 互联网在各行各业的广泛应用等各个方面。 现实生活中的交流存在时间和空间上的局限性,交流人群范围狭小以及间 断的交流不能保证信息的准确性和可取性。 因此伴随着网络的普及,论坛逐渐融入人们的生活。人们只需通过网上论 坛的交流扩大交流面,同时可以从多方面获得自己所需要的最及时的信息。快 速及时的进行交流现已成为人们生活中的一部分。五彩缤纷的网上信息,使网 络与人们的生活息息相关,于是出现了专题论坛。它打破了地域限制,真正使 信息得以全部共享,改变了人们的工作和生活方式。 专题论坛是区域内个人和个人的宣传自己的重要手段,同时人们了解当代 社会的一种现状,也是了解信息的重要手段。 专题论坛系统是基于 B/S 模式上的一种交互性极强的电子信息服务系统。 它为网民提供一块公共的交流平台,每个用户都可以在上面发布自己的观点和 不同的意见,以便与其他用户进行交流和讨论。 毕业设计 (论文) 第 2 页 第 1 章 专题论坛系统开发背景及意义 1.1 系统开发背景 论坛又名网络论坛 BBS,全称为 Bulletin Board System(电子公告板)或 者 Bulletin Board Service(公告板服务)。是 Internet 上的一种电子信息 服务系统。它提供一块公共电子白板,每个用户都可以在上面书写,可发布信 息或提出看法。它是一种交互性强,内容丰富而即使的 Internet 电子信息服务 系统。用户在专题论坛上可以获得各种信息服务,发布信息,进行讨论,聊天 等等。 论坛的发展也如同网络,雨后春笋般的出现,并迅速的发展壮大。现在的 论坛几乎涵盖了我们生活的各个方面,几乎每一个人都可以找到自己感兴趣或 者需要了解的专题性论坛,而各类网站,综合性门户网站或者功能性专题网站 也都青睐于开设自己的论坛,以促进网友之间的交流,增加互动性和丰富网站 的内容。 而专题论坛只是其中的一类。 此类论坛是相对于综合类论坛而言,专题类的论坛,能够吸引真正志同道 合的人一起来交流探讨,有利于信息的分类整合和搜集,专题性论坛对学术科 研教学都起到重要的作用,例如军事类论坛,情感倾诉类论坛,电脑爱好者论 坛,动漫论坛,这样的专题性论坛能够在单独的一个领域里进行版块的划分设 置。 在本文中,主要介绍使用 JSP 和 Servlet 技术来实现论坛建设。通过基于 Internet 互联网的动态 WEB 数据库技术,可以解决远程的数据传输与读取,远 程的客户终端(Client)可以通过 WEB 页面提交请求,查询远端的数据服务器 上的信息,同时还可以向远端数据服务器的数据库中存储信息,以实现信息的共 享,同时利用 Internet 技术可以降低软件的开发和部署成本,只要在服务器端 安装 WEB 应用就可以使每个客户端都能浏览使用。 目前,通过专题论坛系统可随时取得各种自己需要最新的信息;也可以通 过专题论坛系统来和别人讨论计算机软件、硬件、Internet、多媒体、程序设 计以及人文、地理等等各种有趣的话题;还可以利用本系统来发布一些“问题” 、 毕业设计 (论文) 第 3 页 “廉价转让” 、 “招聘人才”及“求职应聘”等启事;更可以召集亲朋好友到聊 天室 内高谈阔论这个精彩的天地就在你我的身旁,只要您拥有一台可以访 问互联网的计算机,就可以通过这个交流平台,来享用它的种种服务。 1.2 系统开发意义 当今网络技术逐渐渗入社会生活各个层面,以前网站上的专题论坛管理系 统要用户登陆以后才能进行相关访问及互动。而随着网络互联技术的进步,现 在网站投票只需打开网页就可进行论坛留言。专题论坛对象是很多的,各个层 次都可进行论坛访问,大至国家领导,小至一个普通干部,访问和留言从到指 定用户进行表格到现在通过网络直接点击相应就可进行。专题论坛管理系统可 解决游客访问及留言,致使现在几乎各个网站都有各种类型的专题论坛管理系 统,用户可选择自己的看法。同时为分散于五湖四海的人们提供一个共同交流、 学习、倾吐心声的平台,实现来自不同地方的用户极强的信息互动性,用户在 获得自己所需要的信息的同时也可以广交朋友,拓宽自己的视野和社交面。 通过网友的发帖中,能得到有益的教诲和启发。网友通过发出关于国家, 社会的有益的观点,能被有关部门采纳,而不是网友空自评论,自艾自叹,自 喜自悲。一些论点能做到各方观点正确公平的显示,具有参考价值。专题论坛 应具有知识性,趣味性,公平性,和谐性等优点。专题论坛给天下的网民都提 供了交流的平台,为网络的互动性作出了巨大的贡献,通过专题论坛,网民们 得以更方便的交流,更便捷的发表自己的观点,而且发布信息都是通过有记录 的文字来进行,所以这样也避免了精华内容的流失。通过专题论坛来征得自己 想要的信息,有更高的效率和时效性。也最节约成本和资源,在专题论坛的交 流过程中,无论喜怒哀乐都是在虚拟的环境中进行,也避免的正面的尴尬和冲 突等,在专题论坛中,可以演变成任何角色,变换多种身份,因为网络的特征, 使得人民更加依赖于论坛中的交流。 毕业设计 (论文) 第 4 页 第 2 章 专题论坛系统需求分析 2.1 现状分析 随着全球英特网用户逐年增多,在中国,据中国互联网信息中心(CNNIC) 最新的调查报告显示,截止 2003 年 6 月底,上网用户已达到 6800 万,比去年 同期增长 48.5,而 1997 年 10 月首次调查结果只有 62 万,几年间增长了 109.7 倍。 上面数据可以看出当今社会网络迅速普及,人们交流的方式也层出不穷, 随着新时代的进入。人们对信息的需求也不断加大,对不同领域的讨论也越来 越多了,因此开发一个专题论坛对人们的交流是非常有必要的。 2.2 可行性分析 可行性分析也称为可行性研究,即是在系统调查的基础上,针对新系统的 开发是否具备必要性和可能性,对新系统的开发从技术、经济、管理的方面进 行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的 就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行 性分析包括以下几个方面的内容。 2.2.1 经济可行性 主要是对项目的经济效益进行评价,利用计算机来实现网上交流信息。开 发一套能满足网上信息交流的软件是十分必要的,实现用户发帖,回帖等功能, 能发表自己的观点。本系统在经济上是完全可以接受的,只需要用户在本地安 装 Web 浏览器,登录论坛就可以浏览帖子并发表自己的意见。所以本系统在经 济上是可行的。 2.2.2 技术可行性 技术上的可行性分析主要分析技术条件是否能顺利完成开发工作,硬、软 件能否满足开发者的需要等。 毕业设计 (论文) 第 5 页 软件方面,系统开发需要的各种软件环境都已具备,数据库服务器方面则 有 MySQL,均能够处理大量数据,同时保持数据的完整性并提供许多高级管理 功能。其灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系 统的软件开发平台已成熟可行。 硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越 大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。 2.3 设计目标 专题论坛系统的总体目标: 1.游客可以查看帖子,并可以留言,给本论坛提供一些建议。以便该论坛 能做的更加的完美。 2.注册会员可以发表自己的帖子、回复帖子、修改个人信息等。 3.版主具有注册用户的所以功能,而且可以管理帖子。 4.管理员具有最大权限,可以执行任何操作。比如增加、修改、删除板块; 删除会员;管理版主等功能。 2.4 功能要求 本系统根据论坛系统的需要,以实现交流信息的一个平台。本系统的功能 要求主要包括: 1.身份的安全验证。主要完成系统登录用户的验证,对于非法用户将禁止 登录,不同身份的用户被赋予不同的权限。 2.游客:浏览帖子,留言。 3.注册会员:发表、修改帖子;回复帖子,删除回复;查看、修改个人信 息,留言 4.版主:发表、修改、删除帖子;回复帖子,删除回复;查看、修改个人 信息,留言 5管理员:删除、修改用户信息、将会员设为版主或撤销版主;添加板块、 修改板块、删除板块;发布公告、修改公告、删除公告;查看留言、删除留言。 毕业设计 (论文) 第 6 页 2.5 平台选择 选择微软平台作为主导,一方面考虑目前微软的飞速发展,越来越多的企 业在规划内部网络时,将微软平台作为首选方案;另一方面从技术角度来讲, 微软平台上的应用无论是在开发上,还是在软件的部署上都是非常容易,而且 性能优越。具体如下: 1. 开发工具:MyEclipse 8.5 2. 辅助开发工具: Dreamweaver 8,EditPlus 3, Adobe Photoshop CS4 3. 数据库:MySQL5.0 4. 服务器 :Apache Tomcat6.0 5. 运行环境 :安装 JDK1.6 支持 Java 运行。 6. 技术:前台网页的设计采用 JSP 技术制作。负责响应用户对业务逻辑 的请求并根据用户的请求行为,决定将哪个 JSP 页面发送给客户由 servlet 处理,JavaBean 则负责数据的处理。 2.6 系统开发工具 本系统是基于 JSP+MySQL5.0 数据库技术实现的,现对 JSP 技术和 MySQL5.0 数据库作简要的介绍。 2.6.1 开发语言JSP(Java Server Page) JSP 页面由 HTML 代码和嵌入其中的 Java 代码所组成。Java Servlet 是 JSP 的技术基础,而且大型的 Web 应用程序的开发需要 Java Servlet 和 JSP 配 合才能完成。JSP 具备了 Java 技术的简单易用,完全的面向对象,具有平台无 关性且安全可靠,主要面向因特网的等特点。JSP 的技术的优势: 1一次编写,到处运行。在这一点上 Java 比 PHP 更出色,除了系统之外, 代码不需要做任何更改。 2系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任 意环境中进行系统部署,在任意环境中扩展。相比 ASP/PHP 的局限性是显而易 见的。 3JSP 技术是用 Java 语言作为脚本语言的。Java 语言是成熟的、强大的、 易扩充的编程语言。 毕业设计 (论文) 第 7 页 4高效性与安全性。JSP 在执行前先被编译成字节码,字节码由 Java 虚 拟机解释执行,比源码解释效率高。 5可维护性。由于 JSP 技术是一种开放的、跨平台的结构,因此 Web 服务 器、平台及其他组件能很容易升级或切换,且不会影响 JSP 基本的应用程序。 6多样化和功能强大的开发工具支持。Java 已经有了许多非常优秀的开 发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平 台之下。 2.6.2 数据库MySQL5.0 MySQL 是一个精巧的 SQL 数据库管理系统,虽然它不是开放源代码的产品, 但在某些情况下你可以自由使用。由于它的强大功能、灵活性、丰富的应用编 程接口(API)以及精巧的系统结构,受到了广大自由软件爱好者甚至是商业软 件用户的青睐,特别是与 Apache 和 PHP/PERL 结合,为建立基于数据库的动态 网站提供了强大动力。 SQL 是一种标准化的语言,它使得存储、更新和存取信息更容易。例如, 你能用 SQL 语言为一个网站检索产品信息及存储顾客信息,同时 MySQL 也足够 快和灵活以允许你存储记录文件和图像。 毕业设计 (论文) 第 8 页 第 3 章 专题论坛系统设计 3.1 数据库设计 在对系统数据库进行设计的过程中,通过对系统功能进行需求分析得到系 统的基本信息表,绘制系统业务流程图和系统数据流程图,分析得到数据字典; 在概率结构设计阶段通过对需求阶段得到的用户需求抽象得到数据库关系模型 的 E-R 图;在逻辑结构设计阶段得到数据库的关系模式并绘制信息表。 3.1.1 数据库需求分析 需求分析是设计数据库的起点,需求分析的结果是否准确地反映了用户的 实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和 实用。 3.1.1.1 系统基本信息 综合以上分析,要实现上面的所有功能模块,数据库共要设计八个表,它 们分别是: 1. 用户表(user):用户 ID、用户名、密码、性别、Email、QQ、类型、发 帖数、头像地址、注册日期、积分 2. 版主(master):版主 ID、板块 ID 3. 管理员表(admin):管理员 ID、管理员姓名、管理员密码 4. 板块表(plate):板块 ID、板块名称、帖子数、板块简介、创建日期 5. 帖子表(posts):帖子 ID、帖子标题、帖子内容、发表日期、发表者、 所在版块 ID、回复数、点击数 6. 回复内容表(reply):回复 ID、回复者、回复帖子 ID、回复时间、 回复内容 7. 公告表(notice):公告 ID、公告标题、公告内容、发布时间 8. 留言信息表(message):留言 ID、留言标题、留言内容、留言时间 3.1.1.2 系统层次图 通过参考网上比较出名的论坛和查询相应的资料,大体了解了论坛系统的 基本流程,因此设计了前台和后台两个模块的层次流程图。 毕业设计 (论文) 第 9 页 前台层次图如图 3-1 所示: 图 3-1 前台层次图 毕业设计 (论文) 第 10 页 后台层次图如图 3-2 所示: 图 3-2 后台层次图 3.1.2 数据库概念结构设计 概念设计阶段主要是将需求分析阶段得到的用户需求抽象为信息结构(概 念模型)的过程,它是整个数据库设计的关键,包括概念模型设计和新系统流 程两个阶段。在需求分析阶段所得到的应用需求应该首先抽象为信息世界的结 构,才能更好地、更准确地用某一 DBMS 实现这些需求。 概念数据模型独立于具体的数据处理的细节和数据库管理系统。这次设计 仍采用传统的实体联系图作为概念设计的工具。再进行优化后,尽量满足结构 清晰、关联简洁、实体个数适中、属性分配合理、没有低级冗余。 系统 E-R 图如图 3-3 所示: 毕业设计 (论文) 第 11 页 图 3-3 系统 E-R 图 3.1.3 数据库逻辑结构设计 对于关系型数据库,数据库的概念结构设计完毕后,要把 E-R 图描述的概 念数据模型转换为等价的关系模式极其约束。逻辑设计的基本工作主要包括如 下的 3 个步骤。 3.1.3.1 专题论坛系统数据流设计模式 该设计以概念结构设计中的 E-R 图为主要依据,这几出相关的整体逻辑结 构。 毕业设计 (论文) 第 12 页 系统数据流设计如图 3-4 所示: 图 3-4 系统数据流设计图 3.1.3.2 完整性设计 完整性要求用于描述各种信息之间的制约关系,以及关联关系,各个数据 项的取值范围以及各个数据项是否可以取值。根据实际需要,采取一定的手段 来满足用户的完整性需求。域完整性约束要求属性值必须在域中。实体完整性 约束要求主键必须唯一且不能为空。如用户信息表中的用户名设置为主键,并 且要求唯一且不能为空。 3.1.3.3 模式优化 本次采用 3NF 为规范准则来分解关系。将一个关系分解为两个或者多个关 系,以满足规范,从而避免产生插入异常、删除异常、更新异常。 毕业设计 (论文) 第 13 页 3.1.4 数据库表设计 用户表如表 3-1 所示: 表 3-1 用户信息表(user) 字段名类型(值)说明 UserID(主键)Int(10)用户 ID UserNameVarchar(20)用户名 UserPasswordVarchar(20)用户密码 UserSexVarchar(4)用户性别 EmailVarchar(50)用户 Email Regdatedate注册日期 PrivilegeInt(10) 用户类型 0:普通用户;1:版主 QQVarchar(10)QQ ImageAddrVarchar(20)头像地址 UserPostsCountInt(255)用户发帖数 Integral Int(255)积分 板块表如表 3-2 所示: 表 3-2 板块信息表(plate) 字段名类型(值)说明 PlateID(主键)Int(10)板块 ID PlateNameVarchar(20)板块名字 PlateDescribeVarchar(128)板块简介 PlateDatedate创建日期 PostsCountInt(255)帖子条数 毕业设计 (论文) 第 14 页 帖子信息表如表 3-3 所示: 表 3-3 帖子信息表(posts) 字段名类型(值)说明 postsID(主键)Int(10)帖子 ID TitleVarchar(128)帖子标题 ContentVarchar(10000)帖子内容 PostsDatedatetime发表日期 UserNameVarchar(20)发表者 PlateIDInt(10)所在板块 ID ClickInt(255)点击次数 ReplyCountInt(255)回复次数 回复信息表如表 3-4 所示: 表 3-4 回复信息表(reply) 字段名类型(值)说明 ReplyID(主键)Int(10)ID ReplyContentVarchar(5000)回复内容 PostsIDInt(10)回复帖子 ID UserNameVarchar(20)回复人 ReplyTimeDatetime回复时间 版主表如表 3-5 所示: 表 3-5 版主表(master) 字段名类型(值)说明 userIDInt(10)版主 ID(用户 ID) PlateIDInt(10)板块 ID 公告信息表如表 3-6 所示: 毕业设计 (论文) 第 15 页 表 3-6 公告信息表(notice) 字段名类型(值)说明 NoticeID(主键)Int(10)公告 ID NoticeContentVarchar(5000)公告内容 NoticeTimedatetime发表日期 NoticeTitleVarchar(128)公告标题 管理员信息表如表 3-7 所示: 表 3-7 管理员信息表(admin) 字段名类型(值)说明 ID(主键)Int(10)管理员 ID AdminNameVarchar(20)管理员名字 AdminPasswordVarchar(20)管理员密码 留言信息表如表 3-8 所示: 表 3-8 留言信息表(message) 字段名类型(值)说明 MessageID(主键)Int(10)留言 ID MessageTitleVarchar(128)留言标题 MessageContentVarchar(5000)留言内容 MessageTimeDatetime发布时间 3.2 系统结构设计 3.2.1 页面模块化设计 模块化设计的要求不仅是为了提高代码的重用性,更重要的是为了提高代 码的可维护性和稳定性。一个模块化程度高、结构清晰的应用程序,在程序维 护时的便利性是可想而知的。最初设计方案时,就要规划好哪些模块是可以提 出来多次使用,哪些模块虽只使用一次,但提出来之后能使代码更清晰等。 毕业设计 (论文) 第 16 页 所以把页面中一些常用代码编写为独立的单元,例如页面的头部和尾部、 首页各个显示区,这样设计新的页面时如果有重复出现的部分,只需要将编写 好的模块用 INCLUDE 语句来组装就可以了。 专题论坛系统功能模块有以下几部分组成: (一)用户注册 新用户注册,填写用户信息,检验用户信息的有效性,并将用户信息持久 化。 (二)用户登陆 提供用户凭证,验证用户信息是否合法,根据用户角色授权。 (三)用户管理 管理员由系统初始化分配一个,管理员可以对用户信息进行部分更改,主 要包括用户角色调整,版主调整,删除用户等。 (四)论坛版块管理 管理员可以添加、删除、修改论坛版块。 (五)帖子管理 管理员可以对所有帖子进行修改、删除等操作,版主可以对本版块帖子进 行修改、删除等操作。 (六)帖子发表 注册用户可以在感兴趣的版块中发表新帖。 (七)帖子回复 用户可以对自己感兴趣的主题发表回复。 (八)帖子浏览 用户可以浏览所有帖子。 (九)意见建议 用户可以与我们联系,并欢迎提出各种意见和建议 3.2.2 MVC 模式设计(Jsp+Servlet+JavaBean) MVC(Model View Controller)是一个设计模式,它强制性的使应用程序 的输入、处理和输出分开。使用 MVC 应用程序被分成三个核心部件:模型、视 毕业设计 (论文) 第 17 页 图、控制器。它们各自处理自己的任务。 视图是用户看到并与之交互的界面。如何处理应用程序的界面变得越来越 有挑战性。MVC 一个大的好处是它能为你的应用程序处理很多不同的视图。JSP 页面处于表现层,也就是视力(View 即 V)的角色。 模型表示企业数据和业务规则。在 MVC 的三个部件中,模型拥有最多的处 理任务。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少 了代码的重复性。JavaBean 则负责数据的处理,也就是模型(Model 即 M)的 角色。 控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击 Web 页面中的超链接和发送 HTML 表单时,控制器本身不输出任何东西和做任何 处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后用确定用哪 个视图来显示模型处理返回的数据。Servlet 用来处理请求的事务,充当控制 器(Controller 即 C)的角色,Servlet 负责响应用户对业务逻辑的请求并根 据用户的请求行为,决定将哪个 JSP 页面发送给客户。 初始的请求由 Servlet 来处理,Servlet 调用商业逻辑和数据处理代码, 并创建 Bean 来表示相应的结果(模型) 。然后 Servlet 确定哪个页面适合于表 达这些特定的结果,并将请求转发到相应的页面(JSP 页面即为视图) ,由 Servlet 确定哪个业务逻辑适用,应该用哪个 JSP 页面相应结果(Servlet 就是 控制器) 。 毕业设计 (论文) 第 18 页 第第 4 章章 专题论坛系统实现专题论坛系统实现 4.1 系统各部分的实现方法 从系统功能模块划分中可以看出,系统总体上有九个功能模块组成。各模 块虽然是独立的,但又统一于同一数据库中,便于管理员管理维护数据库,同 时也便于管理员和用户的操作。在介绍系统各模块的实现方法之前,首先介绍 系统与数据库的连接方式使用 JavaBean 连接连接在服务器 tomcat 里配置 的连接池。再介绍系统主要部分的实现方法。 4.1.1 创建与数据库的连接 配置数据源创建连接池,再通过 JavaBean 连接到数据源再对数据库进行操 作。 连接池是创建和管理一个连接的缓冲池的技术,这些连接准备好被任何需 要它们的线程使用。连接池可以极大的改善用户的 Java 应用程序的性能,同 时减少全部资源的使用。连接池主要的优点有:减少连接创建时间、简化的编 程模式、受控的资源使用。连接池能够使性能最大化,同时还能将资源利用控 制在一定的水平之下,不过如果超过该水平,应用程序将崩溃而不仅仅是变慢。 配置连接池: 1首先要将 mysql 的驱动包放在 tomcat/lib 目录下 2在应用服务器 Tomcat 里的/conf 下找到一个 context.xml 文件,在里 面添加的内容如下: 需要访问数据库就通过在 JavaBean 创建的一个叫 QueryRunner()方法来 访问。 代码如下: public class DbHelper public static QueryRunner getQueryRunner() DataSource ds = null; try /通过在context.xml文件,设定的数据源对象的名字,获取数据 源对象 Context context = new InitialContext(); ds = (DataSource) context.lookup(“java:/comp/env/jdbc/mysqlds“); catch (Exception e) System.out.println(“获取数据源时出错“); QueryRunner qr = new QueryRunner(ds); return qr; 4.1.2 访问数据库的 JavaBean JavaBean 是一种 Java 语言写成的可重用组件。为写成 JavaBean,类必须是 具体的和公共的,并且具有无参数的构造器。JavaBean 通过提供符合一致性设 计模式的公共方法将内部域暴露成为属性。众所周知,属性名称符合这种模式, 其他 Java 类可以通过自省机制发现和操作这些 JavaBean 属性。 用户可以使用 JavaBean 将功能、处理、值、数据库访问和其他任何可以用 Java 代码创造的对象进行打包,并且其他的开发者可以通过内部的 JSP 页面、 Servlet、其他 JavaBean、Applet 程序或应用来使用这些对象。用户可以认为 JavaBean 提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。 JSP 的一个重要特性就是可以用 JavaBean 实现功能的扩展。将大部分功能 放在 JavaBean 中完成,以使 JSP 页面程序更干净简洁、利于维护。JavaBean 可以很方便的用来捕获页面表单的输入并完成各种业务逻辑的处理。 连接数据库的 JavaBeanDbHelper。通过 JSP 页面调用此 JavaBean,可 毕业设计 (论文) 第 20 页 以实现对数据库的连接,数据表的添加、删除、更新等操作。 4.1.3 用户及管理员登录模块页面 用户登录页面比较简单,因为用户不登录就可以浏览帖子,所以登录的功 能就直接增加到了头文件里,用户没有登录时,此模块将一直显示。如果登录 后则将不显示。 用户登录如图 4-1 所示: 图 4-1 用户登录 用户登录后如图 4-2 所示: 图 4-2 用户登录后 毕业设计 (论文) 第 21 页 管理员登录界面如图 4-3 所示: 图 4-3 管理员登录界面 在登录页面时,当用户提交了登录资料后,就由“UsersServlet.java”这 个 servlet 进行验证,它的工作主要是判断用户登录的帐号和密码是否一致。 完成这些工作就必须连接存储用户数据库取出相关信息记录。如果用户输入了 错误的用户名和密码,通过 history.go(-1);返回到登录界面并提示出错,如 图 4-4 所示: 图 4-4 用户登录失败 若用户提交正确的用户和密码后,如果记录验证无误,就通过 JSP 的 request.getRequestDispatcher()方法跳转到相应的界面;然后再判断是否为 版主,如果是版主则要求显示出版主相应的功能。Java 程序片段如下所示: 毕业设计 (论文) 第 22 页 欢迎您:游客 欢迎您: 欢迎您版主: 4.1.4 系统首页模块页面 论坛主界面如图 4-5 图所示: 图 4-5 论坛主界面页面 以下是论坛主界面的部分代码: “ 后台管理界面如图 4-6 所示: 图 4-6 后台管理界面 毕业设计 (论文) 第 24 页 4.1.5 会员注册模块的实现页面 用户如果需要发帖,则需要注册。在注册时严格的规定了注册信息帖子, 如果不按照提示所填写,那将不会注册成功。注册成功后用户可以登录论坛修 改个人资料、发表帖子、回复帖子等功能。用户也可以修改自己的密码等功能。 通过修改密码,下次用户登录系统时,将要用新修改的密码,不然系统检测到 用户密码有误而提示登录失败。用户注册设计页面如图 4-7 所示: 图 4-7 用户注册信息页面 用户注册信息部分代码: function ckeck() if(formReg.UserName.value=“) alert(“用户名不能为空,请输入!“); formReg.UserName.focus(); return false; if(formReg.UserPassword.value.length“); out.println(“alert(修改个人信息成功!);“); 毕业设计 (论文) 第 26 页 第5章 系统测试与评价分析 5.1 测试环境简介 硬件平台:Inter(R) Core(TM)2 Duo,内存 2GB,硬盘 320GB 软件平台:Windows 7 操作系统,MysqL 5.0 数据库,IE8.0 浏览器, Tomcat 6.0, JSP 开发的专题论坛系统。 运用 Tomcat6.6 来测试运行占用的系统资源小,扩展性好,支持负载平衡 与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任 何一个感兴趣的程序员都可以更改它或在其中加入新的功能。Tomcat 是一个小 型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普 遍使用,是开发和调试 JSP 程序的首选。 5.2 系统各模块的测试 在该系统中,用户通过登录或者不登录,将进入用户相对应的功能。用户 通过点击每个模块所对应的标签,便可以进行相应的操作。在系统实现的过程 中,我对本系统进行了大量详细和缜密的测试,各项测试结果都基本符合系统 要求,测试过程如下介绍。 5.2.1 管理界面测试 管理界面中显示出了各模块的分部,并且点击任意一个模块,其中的所有 功能信息会显示出来,每一功能信息都链接到相关的首页中各模块从各自的数 据表中读取记录并将其某些字段显示出来。而且显示出来的字段是可以分布连 接到一个可以完整显示该记录的内容字段的页面,这是最终的目的。系统管理 首页如图 4-6 所示。 5.2.2 其它管理模块测试 其他管理模块的操作基本相同,所以这里只展示了管理员模块的添加板块 作。管理员通过登录系统,就可以在这里执行管理员的操作。 5.3 系统的评价分析 1实用性 毕业设计 (论文) 第 27 页 本系统是典型的信息交流系统。当信息时代迫切需要快速传播信息,局部 范围的信息交流只会减缓信息技术前进的步伐。本系统的意义在于为分散于五 湖四海的人们提供一个共同交流、学习、倾吐心声的平台,实现来自不同地方 的用户极强的信息互动性,用户在获得自己所需要的信息的同时也可以广交朋 友,拓宽自己的视野和社交面。 2可维护性 专题论坛系统的优越性体现在:首先,本系统基于 B/S 的开发模式,开发 者只需对服务器上的处理程序进行修订,而客户端不用做任何改变,就可以照 常使用系统;其次,由于 JSP 技术是一种开放的、跨平台的结构,因此 Web 服 务器、平台及其他组件能很容易升级或切换,且不会影响 JSP 基本的应用程序。 3可扩展性 专题论坛系统是一个不断扩展的系统,本系统采用 B/S 模式开发,可以不 改变系统架构的基础上,直接添加模块,增加系统功能。如果用户想给本系统 添加更多的模块可以将其他模块作为模板,只是稍微改一下数据库的参数和将 新模块包含到所需的页面中,这样就可以在一定程度上扩展系统的功能。 5.4 系统的不足与展望 对于本次做的专题论坛系统有很多不足。首先在于没有做好友善的界面, 这样以来用户操作时间一长就会产生疲倦感,而且网页的整体美工也不是很好。 它的功能上还有很多不足比如板块没有版主时则什么也不显示,当初预想应该 显示版主空缺中,还有就是会员修改信息成功后,不能显示修改成功的信息。 但是数据库却已经更新。对于本系统的发展是相当有前景的现在的网友与日俱 增他们很大

温馨提示

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

评论

0/150

提交评论