2021-07-22

0722 자바 직렬화란?(Serializable 인터페이스)

 1. 왜 직렬화를 할까??

-> 자바 객체의 상태를 다른 환경(파일, DB등) 에 저장하기 위함이다.

-> 결국 자바객체는 컴퓨터 메모리에 잠깐 올라오고 사라지는.. 녀석.. 프로그램이 종료되면 당연히 해당 정보도 없어진다. 그런 자바 객체가 가지고 있는 상태정보를 저장하고 싶을때!! 사용한다.

이때 Serializable 인터페이스를 붙임으로써- 얘는 직렬화해도 괜찮은 애예요! 하고 알려준다.

2. Serializable 인터페이스는 단순 마커 인터페이스. 알려주는 역할 외에는 없다.

3. Deserialize할때는 반드시 해당 클래스 타입으로 풀어야 한다. 멤버변수 메소드 다똑같다고 하더라도 패키지가 다르다던가 하면 역직렬화시 데이터가 이상하게 변환됨.

4. 반드시 Serializable 을 해야할까?

-> 그렇지 않다!! JSON처럼.. 공통된 좋은 규약이 존재하기 때문에. 다른 형식의 정보전달을 생각해볼 수 있다.

5. transient  키워드: 직렬화에서 제외하고 싶을 때 사용하는 키워드. 예를 들어- 주민번호같은 중요 개인정보는 직렬화하지 않도록 해당 키워드를 사용할 수 있다.

댓글 없음:

댓글 쓰기

0328 fdisk, mkfs, mount, fstab

 1. 하드디스크를 붙인다. 2. fdisk -l로 하드디스크를 확인한다.  - interactiive한 커맨드모드 사용하여 (m) 붙인 하드디스크의 파티셔닝을 한다.  - 마지막에 w를 해야 실제로 반영이 된다.  3. mkfs를 하여 어떤 파일시스...