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 | 31 |
Tags
- #자바 #로또
- 자바기본
- 데이터베이스
- spring 게시판 만들기
- Spring 게시판 수정삭제
- 자바 #관리프로그램 기초
- Spring 게시판 상세 조회
- Spring 게시판 작성
- spring framework
Archives
- Today
- Total
JeongseokDEV-SimpleU
[자바]채팅프로그램(1) 본문
필요한 배경지식
- TCP/IP, JAVA I/O, Thread
채팅의 원리
- 서버와 클라이언트 모두 네트워크에 연결되어 IP를 할당 받고 있는 디바이스.
- 서버는 클라이언트가 필요한 자원을 가지고 있고 클라이언트는 서버에 특정 자원에 대한 요청을 하면 서버는 그 자원을 찾아서 응답
TCP/IP
- 다른 컴퓨터와 통신을 하기 위한 통신 규약 중 OSI 계층 중에 전송계층에서 사용
- 인터넷에서 서로 연결된 컴퓨터 프로그램 간에 데이터를 안정적이고 순서대로 교환할 수 있게 해주는 신뢰성이 높은 방식입니다.
- 전송제어와 흐름제어 방식 등을 사용
Socket
- 컴퓨터 네트워크를 경유하는 프로세스 간 통신의 종착점.
- 클라이언트에서 출발한 패킷이 회선을 거쳐 서버 컴퓨터의 맨 마지막 하단부인 소켓에 도달해서 데이터를 교환
- 소켓은 인터넷 프로토콜,원격지와 로컬의 ip주소와 포트에 관한 정보을 담고 있음
ServerSocket sercverSocket ......
InputStram / OutputStream
- 자바에서 데이터는 스트림을 통해 입출력 됨 스트림은 단일 방향으로 연속적으로 흘러가는 것을 말함
- 물이 높은 곳에서 낮은 곳으로 흐르듯이 데이터는 출발지에서 나와 도착지로 흘러간다는 개념
- 프로그램이 데이터를 입력받을 때에는 InputStream 이라고 부름
- InputStream의 출발지는 키보드,파일 네트워크 상의 프로그램이 될 수 있음
항상 프로그램을 기준으로 데이터가 들어오면 InputStream// 데이터가 나가면 OutputStream
다른 프로그램들과 데이터를 교환을 하기 위해서는 양쪽 InputStream 과 OutputStream이 따로 필요
Stream은 단방향 통신을 한다는 특징이 있으므로 하나의 스트림으로 입출력을 동시에 할 수 없음
InputStreamReader / OutputStreamWriter
-바이트 스트림에서 문자 스트림으로 또는 문자 스트림에서 바이트 스트림으로의 변환을 제공하는 입출력 스트림
BufferedReader
- BufferedReader 클래스는 문자 입력 스트림으로부터 문자들을 읽어 들이는데 버퍼링을 함으로써
문자, 문자배열, 문자열 라인 등을 보다 효율적으로 읽어 들일 수 있도록 해준다.
PrintWriter
- 기본 데이터형이나 객체를 쓰기 위한 클래스
PrintWriter(OutStream out, boolean autoFlush)
- 자동 flushing기능이 있는 PrintWriter 객체를 생성한다.
InetAddress.......
'자바' 카테고리의 다른 글
[자바] (0) | 2020.02.11 |
---|---|
[자바]BubbleSort, SelectionSort, InsertionSort (0) | 2020.02.07 |
[자바]관리 프로그램 기초( 도서 ) (0) | 2020.02.07 |
[자바]채팅 프로그램(2) (0) | 2020.02.02 |
[자바]로또 프로그램 (0) | 2020.01.30 |