Java—TCP通信程序

目录

1.1TCP通信原理

1.2TCP发送数据

1.3TCP接收数据


1.1TCP通信原理

TCP通信协议是一种可靠的网络协议,它在通信的两端各建立一个Socket对象,从而在通信的两端形成网络虚拟链路一旦建立了虚拟的网络链路,两端的程序就可以通过虚拟链路进行通信
Java对基于TCP协议的的网络提供了良好的封装,使用Socket对象来代表两端的通信端口,并通过Socket产生O流来进行网络通信 Java为客户端提供了Socket类,为服务器端提供了ServerSocket类

 

1.2TCP发送数据

发送数据的步骤
        创建客户端的Socket对象(Socket)
                Socket(Stringhost int port)

        获取输出流,写数据
                OutputStreamgetOutputStream()

        释放资源
                void close()

package zyy09;

import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;

public class Demo {
    public static void main(String[] args) throws IOException {
        //创建对象
        Socket s=new Socket("192.168.177.118",10000);
        //获得输出流,写数据
        OutputStream os=s.getOutputStream();
        os.write("hello".getBytes());
        //释放资源
        s.close();
    }
}

1.3TCP接收数据

接收数据的步骤
        创建服务器端的Socket对象(ServerSocket)
                ServerSocket(int port)
        监听客户端连接,返回一个Socket对象
                Socket accept()
        获取输入流,读数据,并把数据显示在控制台
                InputStreamgetInputStream()

        释放资源
                void close()

package zyy09;

import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class Demo {
    public static void main(String[] args) throws IOException {
        //创建对象
        ServerSocket ss=new ServerSocket(10000);
        Socket s=ss.accept();
        //获得输出流,写数据
        InputStream is=s.getInputStream();
        byte[] bys=new byte[1024];
        int len=is.read(bys);
        String data=new String(bys,0,len);
        System.out.println("数据是:"+data);
        //释放资源
        s.close();
        ss.close();
    }
}

猜你喜欢

转载自blog.csdn.net/qq_62799214/article/details/127250383