udpテスト

1633 ワード

udpは,チャットルームによく用いられ,直接サービスにメッセージを送信し,3回の握手を行わない.
サービス:
package udp;

import java.net.DatagramPacket;
import java.net.DatagramSocket;

public class UdpRecv {
	public static void main(String[] args) throws Exception {
		DatagramSocket ds = new DatagramSocket(3000);
		byte[] buf = new byte[1024];
		DatagramPacket dp = new DatagramPacket(buf, buf.length);
		ds.receive(dp);
		String str = new String(dp.getData(), 0, dp.getLength());
		System.out.println(str);
		System.out.println("IP:" + dp.getAddress().getHostAddress() + ",PORT:"
				+ dp.getPort());
		ds.close();
	}
}

クライアント:
package udp;

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;

/**
 * 
 *  @Class       : UdpSend
 *  @Description :  , 3 。
 *  @since       : TODO  
 *  @ModificationHistory  
 *  Who        When          What 
 *  -------   ---------    -----------------------------------
 *  Administrator    2014 10 20        
 *
 *  @version : TODO  
 */

public class UdpSend {
	public static void main(String[] args) throws Exception {
		DatagramSocket ds = new DatagramSocket();
		String str = "hello , 398146779.com!";
		DatagramPacket dp = new DatagramPacket(str.getBytes(), str.length(),
				InetAddress.getByName("192.168.39.89"), 3000);
		ds.send(dp);
		ds.close(); // 
	}
}