java TCP协议--客户端和服务器互相发送和接收信息

今天做一个客户端和服务器,客户端可以发送和接收信息,服务器也可以同时发送信息和接收信息
直接上代码

package Test;

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;

//客户端,发送消息和接收消息
public class ClIent1 {
	public static void main(String[] args) throws IOException {
		Socket client=new Socket("127.0.0.1",8888);
		//读取服务器传输的数据
		DataInputStream dis=new DataInputStream(client.getInputStream());
		//向服务器传输数据
		DataOutputStream dos=new DataOutputStream(client.getOutputStream());
		String so="我是客户端";
		//将客户端的信息写进dos里
		dos.writeUTF(so);
		//读取服务器发来的信息
		String mag=dis.readUTF();
		System.out.println("这是服务器发来的信息----》"+mag);
		
	}
}

服务器

package Test;

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

/*
 * 服务器接受数据和发送数据
 * 
 */
public class server1 {
	public static void main(String[] args) throws IOException{
		ServerSocket serverSocket=new ServerSocket(8888);
		System.out.println("正在等待客户端信息");
		Socket client=serverSocket.accept();
		//输入流--接收客户端发来的信息
		DataInputStream dis=new DataInputStream(client.getInputStream());
		//将服务器的信息发到io流中
		DataOutputStream dos=new DataOutputStream(client.getOutputStream());
		//读取客户端发来的信息
		String mag=dis.readUTF();
		System.out.println("服务器收到消息---》"+mag);
		//将服务器的信息写进去
		dos.writeUTF("我是服务器");
		dos.flush();
		
	} 
}

你可能感兴趣的:(java,中级)