预了解
InetAddress类:用于获取IP地址
TCP与UDP的不同在于,TCP是服务器设置端口值,被动服务,而UDP是服务器主动投包,所以要设置投包的目的地IP与端口。
TCP
Server:
ServerSocket server = new ServerSocket(8002);
Socket client = server.accept();
//PrintStream out=new PrintStream(client.getOutputStream());获取输入输出流
Client:
Socket client=new Socket("localhost",8002);
//PrintStream out=new PrintStream(client.getOutputStream());获取输入输出流
UDP
Server:
DatagramSocket client=new DatagramSocket();
byte[] bytes="Hello,world".getBytes();
DatagramPacket bag=new DatagramPacket(bytes,bytes.length,InetAddress.getByName("localhost"),8001);
client.send(bag);
client.close();
Client:
DatagramSocket client=new DatagramSocket(8001);
byte[] bytes=new byte[1024];
DatagramPacket bag=new DatagramPacket(bytes,bytes.length);
client.receive(bag);
client.close();