基于Java的Socket编写的C/S聊天程序实现
更新时间:2020年03月12日 10:41:20 作者:进阶的JFarmer
这篇文章主要介绍了基于Java的Socket编写的C/S聊天程序实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
一个很久以前写的能够支持C/S模式聊天的Demo,利用Java的Socket写的。
只能聊一句就下线,挺low的。
服务器端程序Server
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.ServerSocket; import java.net.Socket; public class TestTcpServer { public static void main(String[] args) { ServerSocket ss = null; BufferedReader in = null; try { ss = new ServerSocket(8888); System.out.println("服务器启动"); Socket socket = ss.accept(); System.out.println("连接建立"); System.out.println(socket.getInetAddress().getHostAddress()); //服务器接收客户端发送的数据 in = new BufferedReader(new InputStreamReader(socket.getInputStream())); String clientContent = in.readLine(); System.out.println("接收客户端消息: " +clientContent); } catch (IOException e) { e.printStackTrace(); } } }
客户端程序Clinet
import java.io.BufferedWriter; import java.io.IOException; import java.io.OutputStreamWriter; import java.net.Socket; import java.net.UnknownHostException; import java.util.Scanner; public class TestTcpClient { public static void main(String[] args) { Socket socket = null; BufferedWriter out = null; //客户端发送数据,服务器端接收 try { socket = new Socket("127.0.0.1",8888); System.out.println("与服务器连接了"); Scanner sc = new Scanner(System.in); String content = sc.nextLine(); out = new BufferedWriter((new OutputStreamWriter(socket.getOutputStream()))); out.write(content); out.flush(); sc.close(); } catch (UnknownHostException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally{ try { out.close(); socket.close(); } catch (IOException e) { e.printStackTrace(); } } } }
运行样例
注意要先起S端,否则:
好啦,先起S端:
然后S端就在等待,它“说话”也没人理它:
接着起C端:
S端也会有响应:
然后C端发消息:
S端收到消息,就双双Over了:
到此这篇关于基于Java的Socket编写的C/S聊天程序实现的文章就介绍到这了,更多相关Java Socket C/S聊天内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:
- Java单线程程序实现实现简单聊天功能
- JAVA Netty实现聊天室+私聊功能的示例代码
- java基于netty NIO的简单聊天室的实现
- 基于Java的Socket多客户端Client-Server聊天程序的实现
- Java使用TCP实现在线聊天的示例代码
- 基于java socket实现 聊天小程序
- Java NIO实战之聊天室功能详解
- Java SE实现多人聊天室功能
- java基于C/S结构实现多线程聊天室
- java基于C/S模式实现聊天程序(服务器)
- java基于C/S模式实现聊天程序(客户端)
- java使用MulticastSocket实现基于广播的多人聊天室
- Java 网络编程之 TCP 实现简单的聊天系统
相关文章
spring boot之使用spring data jpa的自定义sql方式
这篇文章主要介绍了spring boot之使用spring data jpa的自定义sql方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-12-12Java反射通过Getter方法获取对象VO的属性值过程解析
这篇文章主要介绍了Java反射通过Getter方法获取对象VO的属性值过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2020-02-02
最新评论