Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- Swing
- jcenter
- 자바
- java
- HTML모드
- 메소드
- JPA Auditing
- 생성자
- Oracle
- socket
- 템플릿엔진
- mavenCentral
- JavaScript
- 인스턴스
- 컬렉션프레임워크
- Spring
- 바인드변수
- 카카오코딩테스트
- 코딩
- 백준
- 상속
- springDataJPA
- 사용자관리프로그램
- 클라이언트
- springboot
- 클래스
- 깃허브
- SwingCalendar
- 서버
- 멀티쓰레드
Archives
- Today
- Total
프리 정보 컨텐츠
자바 네트워크 Server,Client Socket 통신 방법 코드 및 개념정리 본문
자바로 서버와 클라이언트가 사용하는 채팅 프로그램을 만들기전 개념을 정리하고 사용법을 정리하고자 한다.
Server-Client 개념
Client(클라이언트) - Server(서버)
연결형 프로토콜인 TCP (Transmission Control Protocol)를 통해서
클라이언트가 Request하면 서버가 Response로 주고 받는 역할을 합니다.
TCP Socket 구현 과정
Server -> ServerSocket 생성 -> 접속 accept() -> 접속완료 후 Socket 반환 -> 스트림 생성 -> 데이터 송수신
Client -> Socket 생성 및 접속 -> 스트림 생성 -> 데이터 송수신
Server : accept -> read -> write -> close
Client : connect -> write -> read -> cloase
구현 작동 과정은 아래 코드를 통해서 자세하게 알아보자.
보조스트림 I/O stream
// 입력스트림
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
// 출력스트림
PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())));
Comments