오늘이라도

32. IO ③ 본문

취업성공패키지 SW 개발자 교육/Java

32. IO ③

upcake_ 2020. 4. 1. 20:18
반응형

https://github.com/upcake/Class_Examples

교육 중에 작성한 예제들은 깃허브에 올려두고 있습니다. 


▲예제 1. 기본 데이터 타입의 암호화

 - DataInputStream / DataOutputStream을 이용해서 암호화할 수 있다.

 - 암호화 스트림을 거치면 byte 타입으로 저장되어 알아볼 수가 없게 된다.

 

※ 암호화

 - 송신 ↔ 수신 과정에서 암호화를 하지 않으면 평문을 송신, 수신하게 된다.

 - 암호화를 한다면 평문 - 암호문 - 평문으로 송수신하게 된다.

 - 암호화 : 평문 → 암호문

 - 복호화 : 암호문 → 평문

 - 암호화 키 == 복호화 키 ▶ 대칭키, 비밀키

 - 암호화 키 != 복호화 키 ▶ 비대칭키, 공개키

 

 

▲예제 2.  String 타입의 암호화

 - String 타입을 암호화할 때는 writeUTF()라는 메서드를 사용한다.

 - 텍스트 파일이 아닌 임의의 확장자 파일로 저장하여 일반 사용자가 쉽게 접근하지 못하게끔 한다.

 

 

▲예제 3. 객체의 직렬화 / 역직렬화

 - ObjectInputStream / ObjectOutputStream 은 객체(상태 정보)를 byte 형으로 변환하여 입출력하는 스트림이다.

 - 객체의 직렬화란, 객체가 가지고 있는 멤버 변수들이 바이트형으로 바뀌는 것을 말한다.

 - 객체의 역직렬화란, 직렬화된 객체가 다시 원래의 상태로 복원되는 것을 말한다.

 - DTO 클래스를 직렬화 하기 위해서는 implements Serializable을 붙여준다.

 

 

▲문제 1 - 1. 성적 관리, 출력 예시 및 요구사항
▲문제 1 - 2. 성적 관리 DTO
▲문제 1 - 3. 성적 관리 DAO

 - getScore() : 점수를 입력받고 list에 저장하는 메서드

 - inputSave() : 입력받은 점수를 텍스트 파일에 저장하는 메서드

 - readFile() : 저장된 점수 텍스트 파일을 읽어오는 메서드

 - getSumAvg() : 성적의 총합과 평균을 구하는 메서드

 - avgDescSort() : 평균의 내림차순으로 정렬하는 메서드

 - outputSave() : 정렬한 리스트를 텍스트 파일로 출력하는 메서드

반응형

'취업성공패키지 SW 개발자 교육 > Java' 카테고리의 다른 글

34. Networking ②  (0) 2020.04.03
33. Networking ①  (0) 2020.04.02
31. IO ②  (0) 2020.03.31
30. IO (Input & Output) ①  (0) 2020.03.30
29. 스레드  (0) 2020.03.30