標籤:java 網路 通訊端
基於UDP模式的C/S通訊這是Client端的:
import java.net.*;import java.io.*;public class UDPClient{public static void main(String args[]){DatagramSocket socket = null;DatagramPacket packet = null;InetAddress address = null;String s = "send the data , please !";byte buf[] = new byte[256];buf = s.getBytes();byte ip[] = {(byte)127,(byte)0,(byte)0,(byte)1};try{address = InetAddress.getByAddress(ip);socket = new DatagramSocket();packet = new DatagramPacket(buf,buf.length,address,1080);socket.send(packet);Thread.sleep(2000);packet = new DatagramPacket(buf,buf.length);socket.receive(packet);s = new String(packet.getData());System.out.println("received data is :"+s);}catch(Exception e){System.out.println(e.toString());}socket.close();}}
這是Sever端的:
import java.net.*;import java.io.*;import java.util.*;public class UDPSever{public static void main(String args[]){DatagramSocket socket1=null;DatagramPacket packet1=null;String s1;byte buf1[]= new byte[256];InetAddress address1 = null;int port1;Date date1;try{socket1 = new DatagramSocket(1080);packet1 = new DatagramPacket(buf1,buf1.length);socket1.receive(packet1);s1=new String(packet1.getData());System.out.println("received request:"+s1);port1 = packet1.getPort();address1= packet1.getAddress();date1 = new Date();s1 = date1.toString();buf1= s1.getBytes();packet1= new DatagramPacket(buf1,buf1.length,address1,port1);socket1.send(packet1);Thread.sleep(2000);}catch(Exception e){System.out.println(e.toString());}socket1.close();}}
如果把這IP地址改改。就可以做簡單的網路通訊。網路編程剛接觸,慢慢學習。
Client/Sever模式的通訊——Java