网络编程之TCP协议

2.使用TCP协议编写一个网络程序,设置服务器端的监听端口是8002,当与客户端建立连接后,服务器端向客户端发送数据“Hello,world”,客户端收到数据后打印输出。

代码如下:

package Tcp;

import java.io.InputStream;
import java.net.InetAddress;
import java.net.Socket;

public class client {
	
	public static void main(String[] args) throws Exception {
		new TCPClient().connect();

	}

}
class TCPClient{
	private static final int PORT=8539;
	public void connect() throws Exception{
		//创建一个Socket并连接到给出地址和端口号的计算机
		Socket client = new Socket(InetAddress.getLocalHost(),PORT);
		InputStream is= client.getInputStream(); //得到接受数据的流
		byte[] bs =new byte[1024]; //定义1024个字节数组的缓冲区
		int len=is.read(bs);//将数据读入到缓冲区中
		System.out.println(new String(bs,0,len));
		client.close();
	}
}

服务端的代码如下:

package Tcp;

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

public class Server {

	public static void main(String[] args) throws Exception {
		new TCPServer().listen();
	}
	
}
//TCP服务端
class TCPServer{
	private static final int PORT=8539; //定义一个端口号
	public void listen() throws Exception{
		ServerSocket serverSocket =new ServerSocket(PORT);
		Socket client = serverSocket.accept();
		OutputStream os =client.getOutputStream();//获取客户端的输出流
		os.write(("Hello world").getBytes());
		os.close();
		client.close();
	}
}
运行效果图如下:

网络编程之TCP协议_第1张图片


你可能感兴趣的:(java)