马克-to-win:(视频下载) (全部书籍)在UDP编程当中,技术上没有一个服务器和客户端的概念,即没有类似于TCP中的ServerSocket类,只有主动和被动之说, 客户端和服务器都用DatagramSocket(MyPORT)来绑定到一个端口,发送和接收dataPacket,它们是对等的双方。不过通常来讲, 先发送数据的被认为是客户端。in UDP, there is no concept of server or client, only active and passive, client and server both use new DatagramSocket(MyPORT) to bind to a port to use the port to send and receive the dataPacket, the counterpart which initially send the dataPacket is deemed as the client. unlike the TCP protocol, there, there is really ServerSocket.
UDP通信主要有两个类,DatagramPacket是数据容器,它携带自己来自何处,以及打算去哪里的信息。DatagramSocket用来发送或接收DatagramPacket。
DatagramPacket不仅需要包含正式的数据,也要包含网络地址以及端口号,以决定它的目的地。
例:2.3.1(客户端写,服务器端读)
服务器端:
import java.net.*;
import java.io.*;
import java.util.*;
public class TestMark_to_win {
static final int MyPORT = 1711;
public static void main(String[] args) throws IOException {
byte[] bufreceive = new byte[1000];
DatagramPacket packetreceive = new DatagramPacket(bufreceive,
bufreceive.length);//测试结果bufreceive.length是1000
DatagramSocket socket;
socket = new DatagramSocket(MyPORT);
// Block until a datagram appears:
详情黏贴以下网址在地址栏后请进:http://www.mark-to-win.com/index.html?content=JavaBeginner/javaUrl.html&chapter=JavaBeginner/JavaBeginner9_web.html#UDPSimplestExample