- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机科学与技术系
课程设计报告
2013? 2014学年第一学期
课
程
Java语言程序设计
课程设计名
称
多人聊天程序
专 业 班
级
10计本(2 )班
姓
名
*****
指 导 教
师
*****
2013年10月11号
、需求分析
聊天工具大多数由客户端程序和服务器程序外加服务器端, 本程序采用客 户机/服务器架
构模式。通过Java提供的Socket类来连接客户机和服务器并使 客户机和服务器之间相互通
信,由于聊天是多点对多点的而 Java提供的多线程
功能。用多线程可完成多点对多点的聊天。
主要有两个应用程序,分别为服务器程序和客户端程序。服务器应用程序主 要用于消息转
发,以及向所有用户发送系统消息等;客户端应用程序主要用于客 户聊天记录的显示和信息输
入。采用 Client/Server (C/S)体系结构,即客户
机/服务器体系结构。聊天服务器专门用于监控用户状态和转发消息,客户端负 责接收消息的用
户序列和消息文本发送到服务器。该聊天系统实现私聊,群聊, 用户登陆,退出聊天系统等功
能。
二.设计
?设计思想:
课程设计中利用JAVA实现基于C/S模式的聊天程序。聊天室共分为服 务器端和客户端
两部分,服务器端程序主要负责侦听客户发来的消息, 客户端登录到服务器端才可以实现正常
的聊天功能。
床动服务器
启动客户端
Cl)断登录信息、杏 ? 注册用户
心
纟吉束
?功能设计
服务器端的主要功能如下。
在特定端口上进行侦听,等待客户端连接。用户可以配置服务端的侦 听端口,默认端口为
8888.
向已经连接到服务端的用户发送系统消息。
统计在线人数。
当停止服务时,断开所有用户连接。
客户端的主要功能如下。
连接到已经开启聊天服务的服务端
用户可以配置到连接服务器的 IP 地址和端口号 用户可以配置连接后显示的用户名。
当服务器端开启的话,用户可以随时登录与注销
用户可以向所有人或者某一个人发送消息。
? 详细设计
聊天室服务器端设计
聊天室服务器主要包括 7 个文件,他们功能如下。
ChatServer.java
包含名为 ChatServer 的 public 类,其主要功能为定义服务器端的界 面,添加事件侦听 与事件处理。 调用 ServerListe n 类来实现服务端用户 上线与下线侦听, 调用 ServerReceive 类来实现服务器端的消息收发。
ServerListen.java
该类实现服务端用户上线与下线的侦听。 该类对用户上线下线的侦听 通过调用用户链表来
实现,当用户上线与下线情况发生的时候,该类会对 主类的界面进行相应的修改
ServerReceive.java
发送消息的方法,发义了添加用户、删除根据索引
发送消息的方法,发
义了添加用户、删除
根据索引
送消息会显示在主界面类的界面上
Portconf.java
该类继承自 JDialog ,是用户对服务器端侦听端口进行配置的的类
Node.java 用户链表的节点类,定义了链表中的用户。
UserLinkList.java 用户链表节点的具体实现类,该类通过构造函数构造用户链表,定 用户、返回用户数、根据用户名查找用户、 查找用户这五个方法
Help.java
服务器端的帮助类
聊天室客户端设计
聊天室客户端主要包括 5 个文件,他们的功能如下
Chatclie nt.java
包含名为 Chatclient 的 Public 类,其主要功能为定义客户端的界 面,添加事件侦听与 事件处理。该类定义了 Connect() 与 Disconnect() 方法实现与服务器连接与断开连接。当 SendMessege() 方法来向其他用户 发送带有表情的消 息或者悄悄话。
Clie ntReceive.java
该类是实现服务器端与客户端消息收发的类。
C onn ectCo nf.java
该类继承自Jdialog,是用户所要连接的服务器 IP及侦听端口进行修 改配置的类
UserCo nf.java
该类继承自 Jdialog ,是用户对连接到服务器时所显示的用户名进行 修改配置的类。
Help.java
客户端程序的帮助类。
三.调试及测试
1、调试过程中遇到的主要问题及解决方法 程序中主要问题为:
(1) 套接字的通信问题 网络上两个程序通过一个双向的通信链接实现数据交换,每一端都建立一 个 Socket ,通
过对 Socket 的读写操作实现网络的通信功能。 Socket 通信程序 的基本结构的基本结构主要 有创建 Socket 、打开连接到 Socket 的输入流和输 出流、按照一定的协议对 Socket 进行读 写操作、关闭 Socket 这四个步骤。为 了完成 Socket 通信, java.net 包中提供了
您可能关注的文档
- 外墙保温大模内置施工工艺.docx
- 外墙外保温安全技术交底.docx
- 外用电梯基础及防护方案.docx
- 外窗收口施工技术指导手册.docx
- 外管廊钢结构施工方案.docx
- 外语学院本科生毕业论文装订格.docx
- 外贸公司采购部管理规定与工作流程.docx
- 多元评量的五项共同特点.docx
- 多元随机过程的建模与谱估计.docx
- 多功能全自动振荡仪.docx
- 2025年无人机低空医疗物资投放社会效益报告.docx
- 2025年再生塑料行业包装回收利用产业链重构研究.docx
- 《AI眼镜周边产品市场机遇:2025年终端销售与需求增长洞察》.docx
- 2025年坚果加工行业深加工技术突破与市场拓展策略报告.docx
- 2025年通信芯片行业技术竞争与未来趋势报告.docx
- 《2025年生鲜电商配送冷链事故分析与预防措施》.docx
- 《商业航天融资新趋势2025民营卫星企业资本涌入估值分析市场动态》.docx
- 2025年能源绿色健康行业创新技术与市场应用报告.docx
- 2025年无人机低空医疗救援通信方案分析报告.docx
- 2025年烹饪机器人行业市场集中度分析报告.docx
最近下载
- 基于UbD理论的深度理解导向教学设计.docx VIP
- 青山湖科技城省科创基地单元控制性详细规划.pdf VIP
- 宇通资料.doc VIP
- 《放疗并发症及护理》课件.ppt VIP
- 牙膏生产线设备安全操作规程.docx VIP
- 课堂观察工具评分规则与目标分解-小组作业分享教学提纲.ppt VIP
- 《西藏自治区好住宅技术标准》DB54T 0527-2025(西藏标准).pdf
- 七上英语新人教版按课文内容填空 -挖空版每天早背晚默写.docx VIP
- 牛津译林版 必修第一册 Unit 4 Looking Good,Feeling Good Welcome to the unit & Reading课件(49张ppt)(含音频+视频).pptx VIP
- 2024年八上数学冀教课后习题答案.pdf VIP
原创力文档


文档评论(0)