목차
1. java.io패키지
2. java.net패키지
1. java.io패키지
1) 보조 스트림
- 다른 스트림과 연결되어 여러 가지 편리한 기능을 제공해주는 스트림
- 문자 변환, 입ᆞ출력 성능 향상, 기본 데이터 타입 입ᆞ출력, 객체 입ᆞ출력 등의 기능을 제공
- DataInputStream(입력) 클래스와 DataOutputStream(출력) 클래스를 이용하여 시본 데이터 타입 입ᆞ출력 가능
① 기본 타입 입ᆞ출력 보조 스트림 → ★DataIOTest 참고
- 정수형(int), 실수형(double) 같은 기본 데이터 타입을 유지하면서 입ᆞ출력 할 수 있도록 함
② 객체 직렬화 → ★PersonInformation / ObjectStreamTest 참고
- 데이터가 아닌, 객체를 파일 또는 네트워크로 입ᆞ출력 할 수 있는 기능 제공
- Serializable 인터페이스를 상속받아야 객체 직렬화가 가능
- 클래스: ObjectInputStream, ObjectOutputStream
- 메소드: readObject()와 writeObject() 메소드
2) File 클래스 → ★FileTest 참고
• 데이터들이 입ᆞ출력 하면서 사용하는 파일이나 디렉토리 체제를 관리함
• 파일 시스템의 파일을 표현하는 클래스
- 파일 크기, 파일 속성, 파일 이름 등의 정보 제공
- 파일 생성 및 삭제 기능 제공
- 디렉토리 생성, 디렉토리에 존재하는 파일 리스트 얻어내는 기능 제공
① File 클래스로 디렉토리 생성
• File file = new File(String parent, String child);
ex. File temp = new File("C:/java01", "temp"); → C드라이브에 ‘java01’ – ‘temp’ 폴더 생성
• File file = new File(String pathname);
ex. File temp = new File(“test”); → 현재 프로젝트 폴더 하위에 ‘test’ 폴더 생성
• 생성 메소드: mkdirs()
② File 클래스로 디렉토리 삭제
• 삭제 메소드
- 파일이 없는 단일 폴더 : delete() 메소드
- 파일이 있는 단일 폴더 : listFiles() 메소드로 파일을 구해와서 삭제 후, 디렉토리 삭제
- 파일이 없는 디렉토리 : getParentFile().delete() 메소드로 부모 디렉토리 삭제
2. java.net 패키지
1) 네트워크 기초
- 네트워크: 여러 대의 컴퓨터를 통신 회선으로 연결한 것
- 서버: 서비스를 제공하는 프로그램
- 클라이언트: 서비스를 받는 프로그램
① IP(Internet Protocol) 주소
- 네트워크상에서 컴퓨터를 식별하는 번호
- 네트워크 어댑터(랜 (Lan) 카드) 마다 할당
- IP 주소 확인 법 – 명령 프롬프트 (cmd.exe) 사용
- xxx.xxx.xxx.xxx 형식으로 표현 (xxx는 0~255 사이의 정수)
• DNS (Domain Name System): ip주소를 도메인 이름으로 변환해주는 시스템
[125.209.222.141] → www.naver.com
② 포트(Port)
- 같은 컴퓨터 내에서 프로그램을 식별하는 번호
- 클라이언트는 서버 연결 요청 시 IP 주소와 Port 같이 제공
- 0~65535 범위의 값을 가짐
- 포트 범위는 세 가지로 구분
- 같은 컴퓨터 내에서 프로그램을 식별하는 번호
- 클라이언트는 서버 연결 요청 시 IP 주소와 Port 같이 제공
- 0~65535 범위의 값을 가짐
- 포트 범위는 세 가지로 구분
* Well Known Port Numbers 중 기억할 만한 것
- FTP : 21
- SSH : 22
- TELNET : 23
- HTTP (웹서비스) : 80
- SMTP (메일 송신) : 25
- POP3 (메일 수신) : 110
2) 네트워킹
• java.net API
- ServerSocket, Socket 클래스 이용
'Java' 카테고리의 다른 글
20일차: Java 데이터베이스/오라클- 2021.07.12 (0) | 2021.07.12 |
---|---|
19일차: Java java.net패키지- 2021.07.09 (0) | 2021.07.10 |
17일차: Java Thread/java.io패키지- 2021.07.07 (0) | 2021.07.07 |
16일차: Java 예외처리/Thread- 2021.07.06 (0) | 2021.07.06 |
15일차: Java 자료구조/제네릭/예외처리 - 2021.07.05 (0) | 2021.07.05 |