이 그림도 만들어봤다...
외부의 요청을 받아 Service로 넘긴 후 결과를 클라이언트에 반환
핵심 비즈니스 로직 수행
DB에 접근해 데이터 CRUD
DB의 데이터에 접근하기 위한 객체
DB CRUD 작업
로직을 갖고 있지 않는 순수한 데이터 객체
속성과 그 속성에 접근하기 위한 getter, setter 메소드만 가진 클래스
직렬화는 객체를 저장하거나 메모리, 데이터베이스 또는 파일로 전송하기 위해 객체를 바이트 스트림으로 변환하는 프로세스이다.
주로 Hibernate, RMI, JPA, EJB 및 JMS 기술에 사용된다.
직렬화는 개발자가 객체의 상태를 저장하고 필요에 따라 객체를 다시 만들 수 있게 함으로써 데이터 교환뿐만 아니라 객체 스토리지 기능도 제공한다. 직렬화를 통해 개발자는 다음과 같은 작업을 수행할 수 있다.
역직렬화는 직렬화된 파일 등을 역으로 직렬화하여 다시 객체의 형태로 만드는 것을 의미한다.
저장된 파일을 읽거나 전송된 스트림 데이터를 읽어 원래 객체의 형태로 복원한다.
참고
“스프링과 Dao, DTO, Repository, Entity.” Velog, https://velog.io/@agugu95/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%8C%A8%ED%84%B4%EA%B3%BC-DAO-DTO-Repository.
Chung-A. “[Springboot]Springdatajpa를 활용하여 회원가입 예제- Controller,Service,Repository의 역할및 구현.” 춍춍 블로그, TISTORY, 17 Feb. 2021, https://chung-develop.tistory.com/23.
BillWagner. “Serialization.” Microsoft Docs, https://docs.microsoft.com/ko-kr/dotnet/csharp/programming-guide/concepts/serialization/.
“Serialization in Java - Javatpoint.” Www.javatpoint.com, https://www.javatpoint.com/serialization-in-java.