基于JSPJavaBeanMySQL在线聊天室系统课程设计.doc_第1页
基于JSPJavaBeanMySQL在线聊天室系统课程设计.doc_第2页
基于JSPJavaBeanMySQL在线聊天室系统课程设计.doc_第3页
基于JSPJavaBeanMySQL在线聊天室系统课程设计.doc_第4页
基于JSPJavaBeanMySQL在线聊天室系统课程设计.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

基于基于 JSP JavaBean MySQLJSP JavaBean MySQL 在线聊天室系统设计在线聊天室系统设计 浙江海洋学院 数理与信息学院 浙江 舟山 316000 摘摘 要要 随着 Internet 技术的飞速发展 网络已经成为人们生活中不可缺少的一部 分 通过聊天室在线聊天已成为网络上人与人之间沟通 交流和联系的一种方 式 为此 越来越多的网站开始提供在线聊天的功能 与此同时 聊天室也以 其方便 快捷 低成本等优势受到众多企业的青睐 很多企业的网站中也加入 了聊天室模块 以达到增进企业与消费者之间 消费者与消费者之间相互交流 的目的 本文是软件工程在线聊天室系统的开发说明 重点运用软件工程知识对系 统进行分析 设计实现和测试的思想的具体描述 其中包括软件生命周期的三 个主要方面 软件定义 问题定义 可行性研究 需求分析 软件开发 总 体设计 详细设计 编码 测试 和运行维护 通过实际的运用软件工程知识 处理问题 加强程序的规范性 清晰性 可靠性 并且使得程序易于维护 本 软件使用JAVA进行编写 具有良好的兼容性且易于实现 聊天室操作简洁容易 上手 结构简单 查找方便 实用性强 关键词关键词 在线聊天室 软件工程 JSP MySQL 目目 录录 摘 要 1 1 概述 1 1 1 软件工程的概述 1 1 2 在线聊天系统概述 1 2 需求分析 1 2 3 1 确定对系统的综合要求 2 2 3 2 分析建模 2 2 2 3 系统逻辑模型 3 3 在线聊天室系统的设计 5 3 1 模块图 5 3 2 模块说明 5 4 在线聊天室系统的编码和测试 6 4 1 系统编码 6 4 1 1 聊天室的界面 6 4 1 2 编码处理 8 4 2 系统测试 9 4 2 1 黑盒测试的内容 9 4 2 2 使用黑盒测试的情况分析 10 5 总结 11 参考文献 11 1 1 概述概述 1 11 1 软件工程的概述软件工程的概述 软件工程是一门研究用工程化方法构建和维护有效的 实用的和高质量的软件的学科 它涉及到程序设计语言 数据库 软件开发工具 系统平台 标准 设计模式等方面 在 现代社会中 软件应用于多个方面 典型的软件比如有电子邮件 嵌入式系统 人机界面 办公套件 操作系统 编译器 数据库 游戏等 同时 各个行业几乎都有计算机软件的 应用 比如工业 农业 银行 航空 政府部门等 这些应用促进了经济和社会的发展 使得人们的工作更加高效 同时提高了生活质量 软件工程的目标是 在给定 成本 进度的前提下 开发出具有可修改性 有效性 可靠性 可理解性 可维护性 可重用性 可适应性 可移植性 可追踪性和可互操作 性并且满足用户需求的软件产品 追求这些目标有助于提高软件产品的质量和开发效率 减少维护的困难 1 21 2 在线聊天室概述在线聊天室概述 聊天室实现的主要功能是 接收各个客户端的聊天信息 然后按照其聊天对象将该信息发 送到目标浏览器上 在一个浏览器的窗口中 既能输入上网者的发言 又能看到自己与他 人的聊天记录 同时 为了便于上网者选择谈话对象 窗口中需要提供目前在线者的名单 2 2 需求分析需求分析 2 12 1 确定对系统的综合要求确定对系统的综合要求 1 功能需求 用户打开浏览器 注册登录 登录成功后选择自己喜欢的房间 点进去聊一下 发现 2 可聊天 这东西可以用 有些玩家大家不喜欢 乱刷屏 就会要求管理员把他踢掉 管理员犀利踢之 有些用户之间的聊天不喜欢被人看到 就有了悄悄话的选项 有些用户喜欢添油加醋 聊天内容字体颜色 动作表情都可以添加 2 性能需求 为了保证系统能够长期 安全 稳定 可靠 高效的运行 系统应该满足以下的性能 需求 如果聊天室长期开发 必须考虑数据库的负载 管理员有清理数据库的权限 本聊天室使用数据库 信息与数据库的连接是很频繁的 我们使用 JavaBean 能轻松 实现数据库与外部信息的交换 2 2 分析建模分析建模 2 2 12 2 1 功能模型功能模型 数据流图如图 2 2 所示 JSP JavaBean MySQL 调用 返回结果 操作数据库返回记录 图 2 2 数据流 3 2 32 3 系统逻辑模型系统逻辑模型 2 3 12 3 1用户信息实体用户信息实体 E R 图图 用户 Id 号 用户名 密码 最近登录时间 是否为管理员 聊天信息 所在房间 发表人用户名 发表对象用户名 发表时间 动作和表情 聊天内容 是否悄悄话 Id 发送 在线用户 Id 用户名 所在房间 最近聊天时间 登录 M 1 1 1 2 3 22 3 2 数据库设计数据库设计 create table userinfo 用户信息表 id int primary key auto increment username varchar 50 pass varchar 50 lastlogintime datetime 4 role int 1 管理员 0 普通会员 create table msginfo 聊天记录表 id int primary key auto increment chatroom varchar 50 msgfrom varchar 50 msgto varchar 50 chattime datetime chataction varchar 50 msgcontent varchar 200 secret tinyint 1 1 悄悄话 0 非悄悄话 0 默认 create table useronline 在线用户表 id int primary key auto increment chatroom varchar 50 username varchar 50 lastchattime datetime 5 3 3 在线聊天室设计在线聊天室设计 3 13 1 模块图模块图 在线聊天室系统 登录注册模块聊天室模块管理员模块数据库管理模块 房间列表选择模块聊天信息显示模块信息输入模块在线用户列表模块 以上为模块图 3 23 2 模块说明模块说明 分为 4 个模块 1 数据库通用管理模块 完成数据库的连接 查询 更新功能 封装在 JavaBean 中 DBConn java JSP 页面或者其他 JavaBean 可以通过调用 DBConn 对象的方法 连接 操作数据库 2 用户登录注册模块 聊天室注册简化 将注册和登录融合一起 第一次登录 如果 用户信息表中没有该用户名 即时添加 下次登录可以继续用此用 户 登录后用户就会带着自己的登录信息 session 遨游聊天室模块 3 聊天室模块 先有个房间列表供用户选择 用户选择自己喜欢的房间进入聊 天室 聊天室有个框架里面分为 3 个部分 输入消息 显示消息 6 在线用户列表 4 管理员功能模块 判断是否为管理员 有个友好的界面 通过点击页面 实现对数据库的删除修改查询 4 4 在线聊天室系统在线聊天室系统的编码和测试的编码和测试 4 14 1 系统编码系统编码 4 1 1 聊天室系统的界面聊天室系统的界面截图 截图 注册登录模块 login jsp logincheck jsp 聊天室模块 7 管理员模块 8 4 1 2 编码处理编码处理 数据库通用管理模块数据库通用管理模块 DBConn java 注册登录模块注册登录模块 login jsp 登录界面 弄个表单提交 再加上 JS 的空值验证 logincheck jsp 登录检测处理 UserinfoMgr java 封装了登录检测用户信息和添加用户信息方法的 JavaBean 方法有 check saveToDB 聊天室模块聊天室模块 sessioncheck jsp 检测 session 信息判断用户是否登录 chatframe jsp 框架 包含 显示 在线列表 输入 三个框架 JavaBean 有 Msg java聊天消息封装体 UserOnline 在线用户封装体 ChatRoomMgr java 聊天室管理 子模块 聊天室列表选择模块聊天室列表选择模块 roomlist jsp 聊天室选择页面 roomlistdeal jsp聊天室选择并处理页面 信息显示模块信息显示模块 showmsg jsp聊天信息显示页面 getmsg jsp聊天信息加载页面 实现无刷新 showmsg的任务 1 加载真正得到消息 并实时刷新的页面 实现不闪烁效果 2 确定加载内容的位置 getmsg的任务 1 刷新 JS实现无声音 2 各种操作得到结果 3 在具体位置显 示结果 在线列表模块在线列表模块 onlinelist jsp 在线用户列表页面 信息输入模块信息输入模块 input jsp信息输入页面 sendmsg jsp信息输入处理 logout jsp 离开房间处理 changeroom jsp 重新选择房间处理 9 管理员模块管理员模块 maneger jsp管理员高级页面 kick jsp 踢人功能 管理员踢人实现 manager jsp 先判断是不是管理员 如果不是 提示并退出窗口 本页面直接对数据库操作 显示所有在线玩家列表 和最近发言时间 checkbox复选框传递用户名串names kick jsp 接下来是爽快的踢人操作 调用ChatRoomMgr 的logout 方法 依次传递names i 就实现批 量踢人踢完之后提示 并刷新manager jsp 4 24 2 系统测试系统测试 信息技术深深融入业务生活 使得软件产品质量的要求变得很高 这也使我们为提高 软件测试的效率来寻求各式各样的方法 而软件测试的方法和技术是多种多样的 对于软 件测试技术 可以从不同的角度加以分类 按测试阶段可分为 单元测试 集成测试 确 认测试 测试任何产品都有两种方法 如果已经知道了产品应该具有的功能 可以通过测试来 检验是否每个功能都能正常使用 如果知道产品的内部过程 可以通过测试来检验产品内 部动作是否按照规格说明书的规定正常进行 前一种方法称为黑盒测试 后一种方法成为 白盒测试 4 2 14 2 1 黑盒测试的内容黑盒测试的内容 功能测试也称为黑盒测试 用于验证系统的各项功能是否能正常完成 由于实际情况 的多样性 需要由多人重复测试 在不同情况下执行各项功能操作 其输出就是该功能的 执行结果 黑盒测试着重测试软件功能 黑盒测试并不能取代白盒测试 它是与白盒测试 互补的测试方法 它很可能发现白盒测试不易发现的其他类型错误 黑盒测试发现下述类型错误 1 功能不正确或遗漏了功能 2 界面错误 3 数据结构错误或外部数据库访问错误 10 4 性能错误 5 初始化和终止错误 4 2 24 2 2 使用黑盒测试的情况分析使用黑盒测试的情况分析 采用等价划分的有效等价类和无效等价类进行测试 1 注册登录功能的测试 比如正确账号 admin 密码 123 1 测试数据 输入账号 admin 输入密码 123 预期的输出结果 跳转到 roomlist jsp 页面 并且能获得 session 值 实际运行结果如下图所示 运行结果符合预期情况 2 测试数据 输入账号 admin 124 预期的输出结果 提示您输入的用户或密码错误 请重新输入 实际运行结果如下图所示 您输入的用户或密码错误 请重新输入 运行效果符合预期情况 3 测试数据 输入账号 admin000 123 这个账号数据库里没有 预期的输出结果 直接注册成功 跳转到 roomlist jsp 页面 运行结果符合预期情况 11 5 总结总结 本设计实现了在线聊天系统的基本功能 虽然没有华丽的界面 超强的性能 就练手 学习而言绰绰有余 通过在线聊天室的设计 感觉动手能力增强了很多 JAVA编程能力有了比较大的提升 设计本系统 是对自己专业知识的一次检验 也是一次增强自身综合素质机会 软件工程 这门课程将我们从局部的编写程序带入了整体开发软件的阶段 这是对我们知识与能力的 一种挑战 本文是软件工程在线聊天室系统的开发说明 重点描述运用软件工程知识对系 统进行分析 设计和实现的思想 其中包括软件生命周期的三个主要方面 软件定义 问 题定义 可行性研究 需求分析 软件开发 总体设计 详细设计 编码 测试 和运 行维护 通过对开发本系统的文档的书写 更进一步学习了软件开发的全过程 把软件工 程知识与实际开发软

温馨提示

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

评论

0/150

提交评论