-
[자바의정석] Ch16. 네트워킹(Networking)스터디플래너/공부하기 2022. 10. 8. 14:03
1. 네트워킹(Networking) - 네트워킹이란 두 대 이상의 컴퓨터를 케이블로 연결하여 네트워크를 구성하는 것 - java.net패키지를 사용하면 네트워크 어플리케이션을 구현 가능 1.1 클라이언트/서버(client/server) - 서버(server)란 서비스를 제공하는 컴퓨터(service provider) - 클라이언트는 서비스를 사용하는 컴퓨터(service user) - 서비스란 서버가 클라이언트에게 요청받은 작업을 처리하여 결과를 제공하는 것 - 서버가 제공하는 서비스의 종류에 따라 파일서버(file server), 메일서버(mail server), 어플리케이션 서버(application server) 등이 있음 - 서버가 서비스를 제공하기 위해서 서버 프로그램이 필요하고 클아이언트가 서..
-
[TIL] 2022년 10월 8일 토요일카테고리 없음 2022. 10. 8. 12:05
1.2 IP주소(IP address) - IP(Internet Protocol) 인터넷에서 다른 컴퓨터와 통신할 때 사용하는 프로토콜 - 웹사이트에 접속할 때, 우리가 네이버의 주소를 입력하더라도 DNS Server를 거쳐 IP주소로 변환하고 이 주소로 통신함 - terminal이나 cmd 창에 nslookup naver.com 이라고 검색하면 아래와 같은 결과가 나오는데 아래 네 개의 IP주소를 입력하면 모두 네이버로 연결됨 - 현재 IP는 32비트(4byte) 체계를 사용하여 약 40억 개의 주소를 표현 가능 - 1byte씩 구분하여 점을 찍고 부호 없는 1byte의 값, 0~255 사이의 정수로 표현 - 현재 사용하는 IP 주소 체계는 IPv4로 현재 전세계의 컴퓨터를 40억 개로 처리할 수 없어 ..
-
[TIL] 2022년 10월 4일 화요일카테고리 없음 2022. 10. 4. 23:30
1. 네트워킹(Networking) - 네트워킹이란 두 대 이상의 컴퓨터를 케이블로 연결하여 네트워크를 구성하는 것 - java.net패키지를 사용하면 네트워크 어플리케이션을 구현 가능 1.1 클라이언트/서버(client/server) - 서버(server)란 서비스를 제공하는 컴퓨터(service provider) - 클라이언트는 서비스를 사용하는 컴퓨터(service user) - 서비스란 서버가 클라이언트에게 요청받은 작업을 처리하여 결과를 제공하는 것 - 서버가 제공하는 서비스의 종류에 따라 파일서버(file server), 메일서버(mail server), 어플리케이션 서버(application server) 등이 있음 - 서버가 서비스를 제공하기 위해서 서버 프로그램이 필요하고 클아이언트가 서..
-
[TIL] 2022년 10월 3일 월요일카테고리 없음 2022. 10. 3. 12:13
7. 직렬화(Serialization) - 직렬화는 객체를 컴퓨터에 저장했다가 재사용하거나 네트워크를 통해 컴퓨터끼리 객체를 주고받는 행위를 가능하게 함 7.1 직렬화란? - 직렬화(Serialization)란 객체를 데이터 스트림으로 만드는 것 - 객체를 저장한다는 것은 객체의 모든 인스턴스 변수의 값을 저장한다는 것이고, 저장한 객체를 다시 생성하는 것은 저장된 값을 읽어 생성한 객체의 인스턴스 변수에 저장하는 것 - 객체를 저장하고 전송하기 위해서는 객체에 저장된 데이터를 스트림에 쓰기 위해 연속적인 데이터로 변환(serialization)해야하고, 스트림에서 데이터를 읽어오기 위해서는 연속적인 데이터를 스트림에서 읽어와 객체로 만드는 작업(deserialization)이 필요함 7.2 Object..
-
[자바의 정석] Ch.15 입출력(I/O)스터디플래너/공부하기 2022. 10. 3. 09:56
6. 표준입출력과 File ᐧ Class System - System 클래스는 유용한 클래스 필드(class field)와 메소드를 갖고있음 → 클래스 필드란 클래스에 포함된 변수로 선언된 위치에 따라 클래스 변수(static variable), 인스턴스 변수(instance variable), 지역 변수(local variable)로 나뉨 - System 클래스의 필드는 인스턴트화할 수 없음 - System클래스의 기능은 다음 네 가지로 나눌 수 있음 → Standard input, Standard output, Error Output Stream → 환경변수나 외부에 정의된 속성에 접근 → 파일이나 라이브러리를 로딩하는 수단 → 배열의 일부분을 빠르게 복사하기 위한 메소드 6.1 표준입출력 - Sys..
-
[자바의 정석] Ch.15 입출력(I/O)스터디플래너/공부하기 2022. 10. 3. 09:49
3. 바이트기반의 보조스트림 3.1 FilterInputStream과 FilterOutputStream https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/FilterInputStream.html https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/FilterOutputStream.html - FilterInputStream과 FilterOutputStream은 각각 InputStream과 OutputStream의 자식 클래스이면서 보조스트림 클래스의 조상 클래스 - FilterInputStream/FilterOutputStream은 보조스트림으로 자체적으로 입출..
-
[TIL] 2022년 10월 1일 토요일카테고리 없음 2022. 10. 1. 11:28
6.2 표준입출력의 대상변경 - System.in, System.out, System.err의 입출력 대상은 콘솔화면 → setIn(), setOut(), setErr()를 사용하여 다른 입출력 대상으로 변경 가능 → JDK1.5부터 Scanner클래스를 제공하여 System.in으로 데이터를 입력받는 것이 편리해짐 더보기 import java.io.FileOutputStream; import java.io.IOException; import java.io.PrintStream; public class StandardIOEx { public static void main(String[] args) { PrintStream ps = null; FileOutputStream fos =null; try { f..
-
[TIL] 2022년 9월 27일 화요일카테고리 없음 2022. 9. 27. 22:54
- '\r' 캐리지 리턴으로 커서를 현재 라인의 첫 번째 칼럼으로 이동 - '\n' 다음줄로 이동하는 줄바꿈 - 엔터를 클릭하면 '\r', '\n' 두 개의 특수문자로 간주하여 다음줄의 첫 번째 칼럼으로 이동 - 윈도우는 Ctrl + Z, 유닉스와 매킨토시는 Ctrl + d를 누르면 EOF, 입력의 끝으로 인식한다고 했는데 실제로 해보니 Ctrl + Z를 누르면 아래와 같이 조금 다름 - 위 예제에서도 hello를 입력하고 Enter키를 입력하면 결과가 나온 다음 개행문자인 \r, \n이 출력되어 다음줄의 첫 번째 칼럼으로 이동 → System.in에 BufferedReader를 이용하여 라인단위로 입력받는 readLine()을 이용 - BufferedReader와 readLine()을 이용하도록 예제를..