/**
* 客户端,实现基于UDP的用户登录
*/
public class UDPClient {
public static void main(String[] args) throws IOException{
/**
* 向服务器端发送数据
*/
InetAddress address = InetAddress.getByName("localhost");
int prot = 8800;
byte[] data = "用户名:admin;密码:123456".getBytes();
DatagramPacket packet = new DatagramPacket(data,data.length,address,prot);
DatagramSocket socket = new DatagramSocket();
socket.send(packet);
/**
* 接收服务器响应的数据
*/
byte[] data2 = new byte[1027];
DatagramPacket packet2 = new DatagramPacket(data2,data2.length);
socket.receive(packet2);
String reply = new String(data2,0,packet2.getLength());
System.out.println("我是客户端,服务器说"+reply);
socket.close();
}
}
/**
* 服务器端,实现基于UDP的用户登录
*/
public class UDPServer {
public static void main(String[] args) throws IOException {
/**
* 结束客户端发送的信息
*/
DatagramSocket socket = new DatagramSocket(8800);
byte[] data = new byte[1024];
DatagramPacket packet = new DatagramPacket(data, data.length);
System.out.println("****服务器已经启动,等待客户端发送数据");
socket.receive(packet);
String info = new String(data, 0, packet.getLength());
System.out.println("我是服务器,客户端:" + info);
/**
* 向客户端响应数据
*/
InetAddress address = packet.getAddress();
int port = packet.getPort();
byte[] data2 = "欢迎您!".getBytes();
DatagramPacket packet2 = new DatagramPacket(data2, data2.length, address, port);
socket.send(packet2);
socket.close();
}
}