
//서버
import java.net.*;
import java.io.*;
public class UDaytimeClient {
public static final int PORT = 13;
public static void main(String args[]) {
byte[] data = new byte[500];
String hostname = "localhost";
DatagramPacket sendPacket,Packet;
DatagramSocket socket;
String what = "this is string for send message to server";
if(args.length > 0) {
hostname = args[0];
}
try {
//서버에게 자신을 알리기위한 소켓 만들기
socket = new DatagramSocket();
data = what.getBytes();
Packet = new DatagramPacket(data, data.length,InetAddress.getLocalHost(),PORT);
socket.send(Packet);
//소켓받아 출력하기
sendPacket = new DatagramPacket(data, data.length);
socket.receive(Packet);
String data1 = new String(Packet.getData(),0,Packet.getLength());
System.out.println(data1);
}catch(SocketException se) {
System.out.println(se);
}catch(IOException e) {
System.out.println(e);
}
}
}
//클라이언트
--> 서버에서 보내준 시간을 출력하기 위한 클래스
import java.net.*;
import java.io.*;
import java.util.Date;
public class UDaytimeServer {
public final static int daytimeport =13;
public static void main(String args[]) {
DatagramPacket sendPacket;
DatagramSocket socket;
byte data[]= new byte[200];
try{
//클라이언트의 주소를 알기위한 받기소켓
socket = new DatagramSocket(daytimeport);
DatagramPacket packet = new DatagramPacket(data, data.length);
socket.receive(packet);
//날짜를 생성하여 보내준다.
Date now = new Date();
data= now.toString().getBytes();
sendPacket = new DatagramPacket(data,data.length,InetAddress.getLocalHost(),packet.getPort());
socket.send(sendPacket);
}catch(SocketException se) {
System.out.println(se);
}catch(IOException e) {
System.out.println(e);
}
}
}
//결과

'JAVA' 카테고리의 다른 글
자바채팅프로그래밍 -다중채팅 (0) | 2019.11.10 |
---|---|
자바채팅프로그래밍 -UDP소켓이용 계산기 (0) | 2019.11.03 |
자바채팅프로그래밍 -UDP소켓이용 채팅프로그래밍 (0) | 2019.11.03 |
자바채팅 프로그래밍 - 호스트 파일 정보 출력 , 객체구분 (0) | 2019.10.11 |
자바채팅 프로그래밍 - 호스트 정보 알기 (0) | 2019.10.11 |