소켓(socket)
- 두 호스트 사이 연결
- 어떠한 방식으로 통신을 할지 정해주는 것
- 원격 장비에 연결, 데이터 전송(보내기, 받기), 포트 지정, 수신 대기[c/s(서버와 클라이언트 관계), p2p]
1. ServerSocket 클래스
- 클라이언트의 연결 요청을 기다리면서 연결 수락을 담당하는 클래스
2. Socket 클래스
-연결된 클라이언트와 통신을 담당하는 클래스
// 서버
ServerSocket serverSocket = null;
Socket socket = null;
try {
serverSocket = new ServerSocket(3579);
System.out.println("서버가 준비되었습니다");
socket = serverSocket.accept();
System.out.println("클라이언트가 접속되었습니다");
} catch (IOException e) {
e.printStackTrace();
} finally {
if(socket != null) try {socket.close();} catch (IOException e) {}
if(serverSocket != null) try {serverSocket.close();} catch (IOException e) {}
}
// 클라이언트
Socket socket = null;
try{
System.out.println("서버와 연결을 시도중입니다.");
socket = new Socket("192.168.6.25", 3579);
System.out.println("연결 되었습니다.");
} catch (IOException e){
e.printStackTrace();
} finally {
if(socket != null) try{socket.close();} catch(IOException e){}
}