一、课程设计要求与目的
目的:编写一个小型Java聊天室系统,掌握Java网络通信、多线程、IO文件操作等高级应用编程技能。
完成如下功能:
多客户端模式下,实现客户与客户的单独通信,要求信息通过服务器中转
端到端的通信,实现并行通信模式(不再是你说一句,我说一句,一端的信息发送不受另一端的影响)
实现端到端的文件传输
添加图形界面(选做)
服务器端:分为两个class文件,一个是MultiTalkServer类,还有一个是ServerThread类。
MultiTalkServer实现的功能有:监听客户请求,根据得到的Socket对象和客户计数创建服务线程,并启动。将serverSocket.accept()返回的socket作为参数,传入到ServerThread中。
ServerThread实现的功能有:判断是否下线,判断IP地址是否正确,判断目标客户是否在线,判断是否传输文件,获取目标的socket套接字。