聊天室设计与实现开题报告

毕业设计开题报告

学生姓名:         号:             

    业:                                    

设计题目:                                  

                                            

指导教师:                                    

20##年3月8日

 

第二篇:多人聊天室的设计与实现

山东财经大学

基于JSP+JavaBean+MySQL在线多人聊天室系统设计

成员: 06组多人聊天室

学院: 计算机科学与技术学院 专业: 计算机科学与技术

1

关键词:在线聊天室,JSP,MYSQL,JAVABEAN。

概述

1 在线聊天室概述

聊天室实现的主要功能是:接收各个客户端的聊天信息,然后按照其聊天对象将该信息发送到目标浏览器上。在一个浏览器的窗口中,既能输入上网者的发言,又能看到自己与他人的聊天记录。同时,为了便于上网者选择谈话对象,窗口中需要提供目前在线者的名单。

2. 需求分析

2.1 确定对系统的综合要求

1.功能需求:

用户打开浏览器,注册登录,登录成功后选择自己喜欢的房间,点进去聊一下,发现可聊天,这东西可以用;

有些玩家大家不喜欢,乱刷屏,就会要求管理员把他踢掉,管理员犀利踢之; 有些用户之间的聊天不喜欢被人看到,就有了悄悄话的选项;

有些用户喜欢添油加醋,聊天内容字体颜色,动作表情都可以添加。

2.性能需求:

为了保证系统能够长期、安全、稳定、可靠、高效的运行,系统应该满足以下的性能需求:如果聊天室长期开发,必须考虑数据库的负载,管理员有清理数据库的权限;

本聊天室使用数据库,信息与数据库的连接是很频繁的,我们使用JavaBean,能轻松实现数据库与外部信息的交换;

2.2 分析建模

2.2.1功能模型

2

数据流图如图2-2所示:

图2-2 数据流

2.3 系统逻辑模型

2.3.1用户信息实体E-R图

多人聊天室的设计与实现

3

4

多人聊天室的设计与实现

3. 在线聊天室设计

3.1 模块图

以上为模块图

3.2 模块说明

分为4个模块:

1.数据库通用管理模块:

完成数据库的连接,查询,更新功能 封装在JavaBean中(DBConn.java) JSP页面或者其他JavaBean可以通过调用DBConn对象的方法 连接 操作数据库。

2.用户登录注册模块:

聊天室注册简化,将注册和登录融合一起,第一次登录,如果用户信息表中没有该用户名,即时添加。下次登录可以继续用此用户,登录后用户就会带着自己的登录信息(session),遨游聊天室模块。

3.聊天室模块

先有个房间列表供用户选择,用户选择自己喜欢的房间进入聊天室。聊天室有个框架里面分为3个部分:输入消息

显示消息

多人聊天室的设计与实现

5

在线用户列表 4.管理员功能模块 判断是否为管理员 有个友好的界面 通过点击页面,实现对数据库的删除修改查询

4. 编码处理

数据库通用管理模块 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.加载真正得到消息,并实时刷新的页面,实现不闪烁效果。

getmsg的任务: 1.刷新,JS实现无声音 2.各种操作得到结果 3.在具体位置显示结果 2.确定加载内容的位置

在线列表模块 6

onlinelist.jsp 在线用户列表页面 信息输入模块 input.jsp 信息输入页面 sendmsg.jsp 信息输入处理 logout.jsp 离开房间处理 changeroom.jsp 重新选择房间处理

管理员模块

maneger.jsp

kick.jsp 管理员踢人实现 manager.jsp

管理员高级页面 踢人功能 先判断是不是管理员,如果不是,提示并退出窗口 本页面直接对数据库操作,显示所有在线玩家列表,和最近发言时间 checkbox复选框传递用户名串names kick.jsp 接下来是爽快的踢人操作 调用ChatRoomMgr 的logout()方法,依次传递names[i]就实现批

量踢人踢完之后提示,并刷新manager.jsp

5.总结

本设计实现了在线聊天系统的基本功能,虽然没有华丽的界面,超强的性能,就练手学习而言绰绰有余。

通过在线聊天室的设计,感觉动手能力增强了很多,JAVA编程能力有了比较大的提升。设计本系统,是对自己专业知识的一次检验,也是一次增强自身综合素质机会。JAVAEE程序设计这门课程将我们从局部的编写程序带入了整体开发软件的阶段,这是对我们知识与能力的一种挑战。本文是JAVAEE程序设计在线聊天室系统的开发说明,重点描述运用JAVAEE程序设计知识对系统进行分析、设计和实现的思想,其中包括软件生命周期的三个主要方面:软件定义(问题定义、可行性研究、需求分析)、软件开发(总体设计、详细设计、编码、测试)和运行维护。通过对开发本系统的文档的书写,更进一步学习了软件开发的全过程,把JAVAEE程序设计知识与实际开发软件相结合,规范了实际开发软件程序的全过程,为将来的毕业设计做准备。

7

参考文献

[1] 张海藩,JAVAEE程序设计导论(第5版),清华大学出版社,2008

[2] 李建刚等,JSP网络编程技术与实践,清华大学出版社,2008

[9] 汤一平,Java语言程序设计,科学出版社,2006

[10] 孙卫琴,java面向对象编程[M],电子工业出版社, 2006 8

相关推荐