在线聊天系统的设计与实现(客户端和服务端,MySQL)
来源:56doc.com 资料编号:5D12980 资料等级:★★★★★ %E8%B5%84%E6%96%99%E7%BC%96%E5%8F%B7%EF%BC%9A5D12980
资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用. 密 保 惠 帮助
资料介绍
在线聊天系统的设计与实现(客户端和服务端,MySQL)(任务书,开题报告,中期检查表,文献综述,毕业论文13900字,程序代码,MySQL数据库)
网络聊天工具已经作为一种重要的信息交流工具,受到越来越多的网民的青睐。目前,出现了很多非常不错的聊天工具,其中应用比较广泛的有Netmeeting、腾讯QQ、MSN-Messager等等。该系统开发主要包括一个网络聊天服务器程序和一个网络聊天客户程序两个方面。前者通过Socket套接字建立服务器,服务器能读取、转发客户端发来信息,并能刷新用户列表。后者通过与服务器建立连接,来进行客户端与客户端的信息交流。其中用到了局域网通信机制的原理,通过直接继承Thread类来建立多线程。开发中利用了计算机网络编程的基本理论知识,如TCP/IP协议、客户端/服务器端模式(Client/Server模式)、网络编程的设计方法等。在网络编程中对信息的读取、发送,是利用流来实现信息的交换,其中介绍了对实现一个系统的信息流的分析,包含了一些基本的软件工程的方法。经过分析这些情况,该聊天工具采用Eclipse为基本开发环境和java语言进行编写,首先可在短时间内建立系统应用原型,然后,对初始原型系统进行不断修正和改进,直到形成可行系统。
客户端采用C/S结构,管理端采用B/S的结构,用Tomcat 作为服务器,MySQL作为数据库。
功能分析
本系统要实现的功能如下:
(1)注册
服务器收到用户的注册请求,便开始接受客户传递的信息,诸如客户的呢称,性别,籍贯,个人资料等,接受完毕后,便通过JDBC与后台数据库连接,然后向数据库添加记录,如果成功,便向客户返回其号码。客户收到服务器返回的信息后,便打开窗口登陆。
(2)登陆
在客户端,用户输入其号码和密码,然后建立与服务器的连接,告诉服务器我要登录,服务器收到后,开始通过JDBC读取数据库,然后与用户输入的信息进行比对,如果成功,便打开主程序窗口。然后客户向服务器请求读取好友名单,服务器收到该请求,从数据库中取出好友列表,然后向客户端发送这些信息,客户收到后就在主窗口显示好友。
(3)聊天
客户端首先发送消息到服务器端,服务器端根据发送人信息和接收者信息来转发。例如服务器接收到一个A发给B的消息,先判断B是否已经在线,如果在线就将信息发送过去。如果B不在线则把信息储存在服务器,等B上线了在发送给他。B接收到A发来的信息,如果是未建立对话窗口,则自动打开显示。
(4)发送截图
客户端A点击截图按钮,将屏幕锁定,截取图片,将图片储存在byte[]数组中发送到服务器端。服务器端根据发送人信息和接收者信息来转发。B接收到A发来的截图信息,会根据byte[]构造图片,将图片显示出来。同样,如果是未建立对话窗口,则自动打开显示。
(5)发送文件
客户端A点击发送文件按键,从本地选择文件,将文件在byte[]数组中分批次发送到服务器端。服务器端根据发送人信息和接收者信息来转发。B接收到A发来的文件信息,会根据文件发送的状态和byte[]构造文件。
(6)日志
客户端发送和接收到的信息都会储存在文本文档中。默认储存在C盘下面,会以用户的登录账号为名。
(7)对用户的操作
管理员通过B/S的系统对用户进行增加,修改,删除,查找等操作,对系统进行维护。
(8)在线用户的操作
管理员通过B/S的系统对在线用户操作,可以踢用户下线。
目录
摘 要 I
ABSTRACT II
1 聊天系统的发展简史 1
1.1 开发背景 1
1.2 开发目的和意义 1
1.3 Java语言 1
1.3.1 Java的发展历史 1
1.3.2 Java语言的转折点 3
1.3.3 Java带来的影响 3
1.3.4 Java的特点 5
1.3.5 Java与Internet 6
1.3.6 JDK 简介 6
1.3.7 B/S架构 6
1.3.8 JSP简介 7
1.3.9 JavaBeans技术 8
1.4 Socket编程 8
1.4.1 关于TCP/IP协议 8
1.4.2 服务器和客户机 9
1.5 论文研究内容 9
1.5.1 即时通讯原理 9
1.5.2 Swing技术 10
1.5.3 Java web和struts2技术 10
1.5.4 系统的构建 10
2 即时通讯系统的相关研究 11
2.1 C/S开发模式 11
2.2 B/S开发模式 11
2.3 即时通讯原理 11
2.4 Java Web应用技术 12
2.5 MySQL数据库应用技术 12
2.6 Socket通信技术 12
2.7 开发环境的搭建 12
3 系统分析 13
3.1 系统基本功能描述 13
3.2 可行性分析 13
3.3 系统需求分析 13
3.3.1 功能分析 13
4 系统设计 15
4.1 数据库设计 15
4.2 系统模块设计 15
4.2.1 聊天系统工作原理图 15
4.2.2 系统功能模块图 16
4.2.3 系统用例图 16
4.2.4 活动图 17
4.3 系统类设计 19
4.3.1 Message类的设计 19
5 系统实现 22
5.1 实现概况 22
5.2 注册模块 22
5.3 登录模块 23
5.4 聊天模块 24
5.5 文件模块 25
5.6 用户管理模块 26
5.7 其他功能的实现 26
5.7.1 截图功能的实现 26
5.7.2 聊天记录功能的实现 26
5.8 用户界面的设计 26
结 束 语 30
致 谢 31
参考文献 32
|