基于UDP的echo服务器:
public class echoServerUDP {public static void main(String [] args) {try {int port = 13;DatagramSocket serverSocket = new DatagramSocket(port);byte b[] = new byte[1024];DatagramPacket recvPkt = new DatagramPacket(b,b.length);while (true) { // 完成⼀次连接会话后,再次等待新的连接ive(recvPkt);String recvStr = new Data(),Length());//if ("bye".equals(recvStr)) {System.out.println("断开连接");break;} else {String echo = "echo:" + recvStr;DatagramPacket sendPkt = new Bytes(), echo.length(), SocketAddress());serverSocket.send(sendPkt);System.out.String());System.out.println("----------------");}}} catch (Exception e) {e.printStackTrace();}}
}
public class echoClientUDP {public static void main(String [] args) {try {int n = 5;int port = 13;String ipaddr = "127.0.0.1";DatagramSocket clientSocket = new DatagramSocket();InetSocketAddress sockAddr = new InetSocketAddress(ipaddr, port);while (n > 0) {//从键盘接收字符串BufferedReader in = new BufferedReader(new InputStreamReader(System.in));System.out.println("输入信息:");String str = in.readLine();//执行键入动作,存入sDatagramPacket udpPkt = new Bytes(),str.length(),sockAddr);clientSocket.send(udpPkt);//接收服务器的echoif ("bye".equals(str)) {System.out.println("断开连接");break;} else {byte buf[] = new byte[1024];DatagramPacket echo = new DatagramPacket(buf,buf.length);ive(echo);System.out.println(new Data(),Length()));System.out.println("----------------");}n--;}clientSocket.close();} catch (Exception e) {e.printStackTrace();}}
}
本文发布于:2024-01-28 05:10:39,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/17063898435021.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |