網絡編程
6 UDP
6.1 初識Tomcat
服務端
- 自定義 S
- Tomcat S
客戶端
- 自定義 C
- 瀏覽器 B
6.2 UDP
6.2.1 udp實現發送消息
接收端:
package com.duo.lesson03;import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;public class UdpServerDemo1 {public static void main(String[] args) throws Exception {//開放端口DatagramSocket datagramSocket = new DatagramSocket(9090);//接收數據包byte[] buffer = new byte[1024];DatagramPacket datagramPacket = new DatagramPacket(buffer, 0, buffer.length);datagramSocket.receive(datagramPacket); //阻塞接收System.out.println(datagramPacket.getAddress().getHostAddress());System.out.println(new String(datagramPacket.getData(), 0, datagramPacket.getLength()));//關閉連接datagramSocket.close();}
}
發送端:
package com.duo.lesson03;import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;//UDP不需要連接服務器
public class UdpClientDemo1 {public static void main(String[] args) throws Exception {//1.建立一個Socket用于發送包DatagramSocket datagramSocket = new DatagramSocket();//2.建一個包String msg = "您收到一條新消息";InetAddress inetAddress = InetAddress.getByName("localhost");int port = 9090;DatagramPacket datagramPacket = new DatagramPacket(msg.getBytes(), 0, msg.getBytes().length, inetAddress, port);//3.發送包datagramSocket.send(datagramPacket);//4.關閉流datagramSocket.close();}
}
運行結果: