구분설명서버(Server) 여러명의 사용자들에게 서비스를 제공하는 컴퓨터 클라이언트(Client) 서비스를 요청해서 사용하는 컴퓨터 소켓 프로그래밍이란? 소켓을 이용한 통신 프로그램이다. * 소켓(Socket): 프로세스 간의 통신에 사용되는 양쪽 끝단을 의미한다.* java.net 패키지를 통해 소켓프로그래밍을 지원하며 TCP와 UDP를 이용한 소켓프로그래밍이 대표적이다. 항목TCP UDP 연결방식연결기반(Connection-Oriented)연결 후 통신, 1:1 통신 방식 비연결기반(Connectionless-Oriented)연결없이 통신(소포), 1:1, 1:n, n:n 통신 방식 특징- 데이터의 경계를 구분하지 않는다 (byte-stream)- 신뢰성있는 데이터 전송- 데이터의 전송순서가 보장된다..
파일 입출력은 1과 2로 나누어서 공부하도록 하겠습니다. 파일 입출력은 1에서 배운내용을 토대로 이미지 파일 전송 및 불러오기를 실습하도록 하겠습니다. 이미지 파일 전송에 대한 실습입니다.import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; public class ExampleImageSend{ public static void main(String[] args) throws IOException { // byte [] 스트림은 InputStream, OutputStream // 1) 바이트형태의 파일..
입출력 전에, 스트림에 대해서 공부하겠습니다. 스트림이란? 순서가 있는 데이터를 운반하는데 사용되는 연결 통로이다. 하나의 스트림은 단 방향 통신만 가능하다. * 입력 스트림 : 데이터 소스로부터 데이터를 읽기 위한 스트림이다. * 출력 스트림 : 데이터 소스에 데이터를 소비하기 위한 스트림이다. * 스트림의 종류 바이트 스트림(byte stream) 데이터 종류가 파일, 그림, 동영상 등의 바이트 기반인 경우 8비트의 바이트 단위로 입출력하는 클래스 문자 스트림(character stream) 문자데이터를 입출력하는 클래스 버퍼란? 데이터를 일정 크기 단위로 묶어서 저장하는 창고이다. 자바에서는 버퍼링된 스트림을 제공한다. Why? 문자 하나하나를 처리하기엔 버겁기 때문에(오버헤드) 버퍼에 만들어진 일..
