티스토리 뷰
보내는 쪽 - InetAddressTest
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; import java.net.SocketException; import java.net.UnknownHostException; public class InetAddressTest { public static void main(String[] args) { try { InetAddress ip = InetAddress.getByName("상대 ip"); //UDP 순서 //소켓생성 DatagramSocket socket = new DatagramSocket(); //보낼 데이터를 바이트로 배열로 중비. String msg = "하하하"; byte[] buf = msg.getBytes(); //준비한 바이트 배열을 목적지주소와 목적지 포트번호를 통해 패킷으로 준비. int port = 7000; DatagramPacket p = new DatagramPacket(buf, buf.length,ip, port); //소켓을 통해 패킷전송. socket.send(p); } catch (UnknownHostException e) { //주소값이 없을때 발생하는 예외 e.printStackTrace(); } catch (SocketException e) { //소켓 에러 예외 e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } | cs |
받는 쪽 - UdpReceiver
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.SocketException; public class UdpReceiver { public static void main(String[] args) { //UDP 데이터 수신하기 try { //수신할 포트를 적어서 소켓 생성. int port = 7000; DatagramSocket socket = new DatagramSocket(port); //받는을땐 포트입력 //수신할 데이터가 저장될 빈 바이트배열 준비. byte[] msg = new byte[512]; //수신할 데이터가 저장될 빈 패킷을 위의 배열과 연결해서 준비. DatagramPacket p = new DatagramPacket(msg, msg.length); //빈 배열 , 배열의 사이즈만큼 받아와라 System.out.println("수신 대기중 ...."); //소켓에 준비한 빈 패킷을 담아 수신. socket.receive(p); System.out.println("수신 완료"); System.out.println("수신 내용 : " + new String(msg)); //바이트로 된 메시지를 스트링으로 } catch (SocketException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } } | cs |
UdpReceiver 실행 후 InetAddressTest 실행하면 경과를 받을 수 있다.
결과 :
수신 대기중 ....
수신 완료
수신 내용 : 하하하
반응형
'언어 > JAVA' 카테고리의 다른 글
[JAVA] 라이브러리 추가 (0) | 2016.10.21 |
---|---|
[JAVA] TCP 통신 예제 (1) | 2016.09.29 |
[JAVA] 서버(server)와 클라이언트(client), TCP와 UDP (0) | 2016.09.27 |
[JAVA] FileWriter, FileReader (0) | 2016.09.26 |
[JAVA] 직렬화(Serializable) (0) | 2016.09.26 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- mysql
- jdbc
- java
- 스프링
- 자바
- synchronized
- js
- 생성
- Server
- Delete
- jsp
- 음식
- 사용
- 종류
- 라이브러리
- Controller
- Android
- UTF-8
- Class
- 연결
- spring
- nsis
- 안드로이드
- 클래스
- Default
- mybatis
- 하기
- 어노테이션
- Create
- iNT
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함