본문 바로가기

JAVA

[JAVA] 네트워크와 스레드

자바에서 네트워크를 통해 데이터를 송수신 하는 것은 일반적인 데이터 입출력과 거의 비슷하다.

BufferedReader만 있으면 어떠한 자료든 읽을 수 있다.

 

클라이언트 소켓과 서버 소켓을 만들고 서로 데이터를 주고받게할 수 있다.

 

* 클라이언트에서는 서버에 대해 알아야 한다.

* 서버에서는 모든 클라이언트에 대해 알아야 한다.

 

소켓 연결 : 두 시스템이 서로에 대한 정보가 있다는 것을 의미함. 그 정보에는 네트워크 내의 위치(IP)와 TCP 포트 번호도 포함된다.

 

TCP 포트는 숫자에 불과하다. 즉, 서버에 있는 특정 프로그램을 나타내는 16비트 숫자이다.

 

 

***

소켓으로부터 데이터를 읽으려면 BufferedReader를 사용하면 된다.

소켓을 통해 데이터를 주고받을 때는 스트림을 사용한다. 

 

클라이언트 <- 버퍼에저장된문자(BufferdReader) <- 문자(InputStreamReader) <- 011010011(소켓의 입력 스트림) <- 서버에 있는 데이터

 

클라이언트 -> 보낼메세지(PrintWriter) -> 011010011(소켓의 출력 스트림) -> 서버프로그램(서버)

'JAVA' 카테고리의 다른 글

[JAVA] 델리게이트란?  (0) 2020.06.01
[JAVA] 인터페이스란?  (0) 2020.06.01