网络聊天室个人笔记

本文分享了Java网络聊天室项目的实战经验,包括服务器端与客户端功能解析,如监听信号、建立连接、读取及发送消息等。文章还介绍了如何通过创建ServerSocket监听客户端连接,利用socket对象获取远程客户端信息,构建输入输出流对象实现数据交换,以及客户端如何向服务器发送信息和接收服务器反馈。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

@[网络聊天室个人总结]
相信每一个刚开始学习Java语言的人都写过网络聊天室这个前期小项目,宝哥哥也是正在学习,在这儿写一些自己的总结和自己对这块知识的一些小窍门,新手笔记,大牛请指教.(个人觉得写java代码就是在造自己的宫殿,先有外面的大轮廓,再进行细腻的装修,最终达到你想要的效果,目的性语言,在你写代码之前就知道自己想要什么,嘻嘻~~)
理清框架:
服务器端和客户端
1.服务器端中需要实现的功能:监听信号;建立与客户端的连接;读取客户端发来的消息
2.客户端中需要实现的功能:读取服务器端发来的消息;向服务器端发送信息(需要配置服务器端的地址)
具体流程(此处的a,b没有顺序大小关系,括号内为主要关键字):
a.服务器端(Server):
1>创建服务器,并开启端口(ServerSocket)
2>接收客户端的连接{阻塞式}(socket.accept)
3>获取远程客户端的ip(socket.getRemoteSocketAddress)
4>构建输入流对象,获取客户端发送过来的数据 (inputStream;socket.getInputStream)
5>构建输出流对象,向客户端发送数据 (DataOutputStream;dos.writeUTF;dos.flush)
b.客户端(Client)
1>构建一个客户端对象,并指定该对象的ip地址和端口(Socket)
2>构建一个控制台输出流,输入内容发给服务器(BufferedReader)
3>构建输出流,向服务器端发送数据(OutputStream)
4>构建输入流,获取服务器回传的数据(InputStream)
基本框架完成,在自己写聊天室的时候,为了解耦合和提高代码的复用性,可以单独写一个关闭IO流的工具类

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值