温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Java网络编程TCP怎么实现聊天功能

发布时间:2022-05-20 10:54:47 来源:亿速云 阅读:224 作者:zzz 栏目:大数据

这篇“Java网络编程TCP怎么实现聊天功能”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Java网络编程TCP怎么实现聊天功能”文章吧。

客户端:

package com.kuang.lesson02; import java.io.IOException; import java.io.OutputStream; import java.net.InetAddress; import java.net.Socket; //客户端 public class TcpClientDemo01 {     public static void main(String[] args) {         Socket socket = null;         OutputStream os = null;         try {             //1、要知道服务器的地址、端口号             InetAddress serverIP = InetAddress.getByName("127.0.0.1");             int port = 9999;             //2、创建一个socket连接             socket = new Socket(serverIP, port);             //3、发送消息IO流             os = socket.getOutputStream();             os.write("你好,Java".getBytes());         } catch (Exception e) {             e.printStackTrace();         } finally {             if (os != null) {                 try {                     os.close();                 } catch (IOException e) {                     e.printStackTrace();                 }             }             if (socket != null) {                 try {                     socket.close();                 } catch (IOException e) {                     e.printStackTrace();                 }             }         }     } }

服务端:

package com.kuang.lesson02; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.net.ServerSocket; import java.net.Socket; //服务端 public class TcpServerDemo01 {     public static void main(String[] args) {         ServerSocket serverSocket = null;         Socket socket = null;         InputStream is = null;         ByteArrayOutputStream baos = null;         try {             //1、我得有一个地址             serverSocket = new ServerSocket(9999);             while (true) {                 //2、等待客户端连接过来                 socket = serverSocket.accept();                 //3、读取客户端的消息                 is = socket.getInputStream();                 //管道流                 baos = new ByteArrayOutputStream();                 byte[] buffer = new byte[1024];                 int len;                 while ((len = is.read(buffer)) != -1) {                     baos.write(buffer, 0, len);                 }                 System.out.println(baos.toString());             }         } catch (Exception e) {             e.printStackTrace();         } finally {             //关闭资源             if (baos != null) {                 try {                     baos.close();                 } catch (IOException e) {                     e.printStackTrace();                 }             }             if (is != null) {                 try {                     is.close();                 } catch (IOException e) {                     e.printStackTrace();                 }             }             if (socket != null) {                 try {                     socket.close();                 } catch (IOException e) {                     e.printStackTrace();                 }             }             if (serverSocket != null) {                 try {                     serverSocket.close();                 } catch (IOException e) {                     e.printStackTrace();                 }             }         }     } }

运行结果:

1、首先运行服务端,等待接收消息,可以发现服务端一直在运行

Java网络编程TCP怎么实现聊天功能

2、接着运行客户端,发送消息,可以发现客户端运行结束

Java网络编程TCP怎么实现聊天功能

3、返回服务端查看,可以发现服务端已经接收到了客户端发送来的消息

Java网络编程TCP怎么实现聊天功能

4、由于是循环操作,所以只要客户端发送消息来,服务端就能接收到,可以实现多次发送消息。

以上就是关于“Java网络编程TCP怎么实现聊天功能”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI