java 网络编程-TCP-多人群聊(自问自答)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java 网络编程-TCP-多人群聊(自问自答),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1625字,纯文字阅读大概需要3分钟。
内容图文
![java 网络编程-TCP-多人群聊(自问自答)](/upload/InfoBanner/zyjiaocheng/727/c1ebe5ade8cc417493c8784359204705.jpg)
在线聊天室
服务器:
public class Chat {
public static void main(String[]args) throws IOException
{
System.out.println("服务器启动中...");
//创建服务器
ServerSocket server=new ServerSocket(9999);
//阻塞式等待连接,当客户端Socket创建好以后才开启
while(true)
{
Socket client=server.accept();
System.out.println("一个客户端建立了连接");
new Thread(()->{
DataInputStream dis = null;
DataOutputStream dos = null;
try {
dis = new DataInputStream(client.getInputStream());
dos = new DataOutputStream(client.getOutputStream());
} catch (IOException e1) {
e1.printStackTrace();
}
boolean flag=true;
while(flag) {
String msg = null;
try {
msg = dis.readUTF();
dos.writeUTF(msg);
dos.flush();
} catch (IOException e) {
//当断掉客户端连接时,不用循环再读取数据
flag=false;
}
//返回消息
}
try {
if(null!=dos)
{
dos.close();
}
} catch (IOException e) {
e.printStackTrace();
}
try {
if(null!=dis)
{
dis.close();
}
} catch (IOException e) {
e.printStackTrace();
}
try {
if(null!=client)
{
client.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}).start();
}
}
}
客户端:
public class Client {
public static void main(String[]args) throws UnknownHostException, IOException
{
System.out.println("客户端启动中...");
Socket client=new Socket("localhost",9999);
//客户端发送消息
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
DataOutputStream dos=new DataOutputStream(client.getOutputStream());
DataInputStream dis =new DataInputStream(client.getInputStream());
boolean flag=true;
while(flag) {
System.out.println("请输入消息");
String msg=br.readLine();
dos.writeUTF(msg);
dos.flush();
//获取消息
msg=dis.readUTF();
System.out.println(msg);
}
dos.close();
dis.close();
client.close();
}
}
内容总结
以上是互联网集市为您收集整理的java 网络编程-TCP-多人群聊(自问自答)全部内容,希望文章能够帮你解决java 网络编程-TCP-多人群聊(自问自答)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。