소켓 서버 Sample 코드
소켓 서버 구동시 특정 포트를 사용하게 되므로 기존 다른 서버에서 사용되지 않는 포트로 설정 Windows 포트 확인 방법
- 윈도키+R
- cmd
- telent IP PORT
연결 대상 IP…호스트에 연결할 수 없습니다. 포트 5090: 연결하지 못했습니다.
위와 같은 메세지일 경우 5090 포트는 사용 가능한 포트입니다.
Server Sample Code
import java.io.IOException;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Date;
public class SocketServerTEST {
public static void main(String[] args) throws IOException {
ServerSocket listener = new ServerSocket(5090);
try {
while (true) {
Socket socket = listener.accept();
try {
PrintWriter out =
new PrintWriter(socket.getOutputStream(), true);
out.println(new Date().toString());
} finally {
socket.close();
}
}
}
finally {
listener.close();
}
}
}
Client Sample Code
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
public class SocketClientTEST {
public static void main(String[] args) throws Exception {
Socket socket = new Socket("IP", 5090);
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
out.write("hi");
out.flush();
BufferedReader input =
new BufferedReader(new InputStreamReader(socket.getInputStream()));
String returnMessage = input.readLine();
System.out.println(returnMessage);
input.close();
socket.close();
}
}