- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java 课程设计指导书 (学生版初稿)
第二章 聊天室系统
目标
2.1 背景介绍
2.1.1 业务背景
2.1.2 技术背景
2.2 需求分析
2.2.1功能需求分析
2.2.2 业务对象分析
2.2.3 验收测试要求
2.3 系统设计
2.3.1 总体设计
2.3.2 详细设计
2.4 系统实现
2.5 小结
2.6 展望
第二章 聊天室系统
学习目标:
1、理解基于网络的C/S模式的软件系统结构,掌握网络编程的基本概念。
2、了解Java 的多线程机制,掌握Java多线程技术的应用。
3、熟练掌握基于TCP协议的Socket编程。
4、了解Socket编程的协议约定,掌握简单应用协议的开发。
5、进一步巩固发展团队协作能力。
学习寄语:想必大家都用过QQ,其主要功能就是聊天,是不是很想知道它是如
何实现的?本项目就是帮你实现一个简单的聊天系统,当然跟商业项目没法比,
但从中你却可以了解这些系统是如何实现的,学到开发类似系统的基础知识和基
本技能 (基本并不意味不实用)。本章的内容有一定难度 (多线程、基于TCP 的
应用协议编程),所以系统的开发采用了 “增量迭代”的开发方式,由简易到繁
难,希望你能顺利前行。我们的信念依然是:“不抛弃,不放弃”。你的改变和收
获依然是老师真诚的期待,期待你更踏实、更自信。Come on!
2.1 背景介绍
2.1.1 业务背景
随着网络社会的不断发展,具有相同兴趣的网民需要互相远程交流,既要能
省钱又要能即时交互,电话太贵、email 又嫌慢,所以开发一个类似QQ 的及时
Happy Chat QQ
通讯系统就变得非常有意义了。“ ”聊天系统应运而生,它较之
的唯一好处是自主开发,用的放心,更适合在局域网内使用。它提供的功能远不
如QQ丰富,但应具有如下功能:(1)与聊天室成员一起聊天;(2)可以与聊天
3 4 5
室成员私聊;()用户注册、登录;()服务器监控聊天内容;()服务器发送
通知;(6)服务器踢人;(7)保存服务器日志。(8)保存用户聊天信息。
2.1.2 技术背景
本系统要求使用java技术开发,使用文件保存数据,集成开发环境使用
eclipse。开发者应有java程序设计语言、SWING基本GUI组件、多线程、文件
使用、socket编程、使用eclipse的基本知识和技能。系统采用两层C/S体系
结构,C端负责通过GUI与客户交互,实现注册、登陆、收发信息、退出等功能;
S端是聊天系统的应用服务器,主要有处理用户注册、登录、用户收发信息、用
户退出等功能。C端和S端是通过网络交互的,其基本原理如图1所示:
图1C/S通讯基本原理图
首先服务器启动,它会建立一个专门用于接收客户端连接请求的 “倾听
Socket”(相当于总服务台,有固定的IP地址和端口号),然后等待客户的连接
请求。
当用户想聊天时,从界面输入信息,然后与服务器建立Socket 连接 (连接时
应指定服务器的IP 地址和端口号,而客户端socket 的端口由本方操作系统从空
闲端口中确定),服务器端的“倾听Socket”收到连接请求后,一般会接受连接
请求,并生成一个服务端socket (其端口号由服务端操作系统从空闲端口中确
定),专门负责与此客户端socket的通信。一旦连接请求成功,客户端将信息及
请求通过本方socket 的输出流发送给服务器端相应的socket,服务端则通过服务
器端Socket 的输入流接受客户端传输过来的信息及请求,分析是何请求,然后
根据请求类型,进行相应的处理 (如登录、转发信息等)。服务方也可以根据需
要,通过socket 的输出流发信息和请求给客户端 (公告)。客户方和服务方都可
以通过关闭本方的socket 而结束一次通讯过程。
不难发现服务器需要能同时接受多个客户的请求,为了实现这一点,一般使
用多线程机制来处理,对每一个客户端连接通讯,服务器端都有一个线程专门负
责处理 (相当于一个服务员专门服务一个以IP 地址和端口号唯一标识的客户)。
上述方
文档评论(0)