Entity 2

Entity, DTO의 차이와 사용 이유, 개념

Entity, DTO가 뭐지? 분리해서 쓰라고? 개인적으로 생각할 때에 처음 Spring boot를 배울 때 가장 개념이 잡히지 않는 것들 중 하나가 DTO, Entity일 것이라 생각한다. 특히 처음에 볼 때는 걍 Entity를 쓰니까 다 되는데 왜 굳이 이거 두개를 나누지? 라는 생각을 할 수도 있을 것이라 생각한다. 이 글에서는 이 두 가지의 간단한 개념과 나누는 이유, 사용 방법에 대해 기술한다. Entity란? Entity란 DB의 테이블에 존재하는 Column을 필드로 갖는 객체이다. 여기서 중요한 점은 DB테이블과 관련이 있다는 점이다. 즉, Entity는 DB테이블과 소통하는 데에 사용하는 것이다. DTO란? Data Transfer Object라는 뜻이다. DTO는 계층 간 데이터 교환을..

이론 정리/java 2022.02.28

Mapstruct사용 이유 및 장단점. 사용 방법에 대한 사용 예제

Mapstruct 클래스 간 변환을 위해 사용하는 라이브러리 Mapstruct를 사용하면 Entity - DTO 간 매핑을 쉽게 해줄 수 있다. Mapstruct의 장점 -> ModelMapper와 비교하여 ModelMapper와 달리 Reflection API를 사용하지 않는다. 컴파일시 미리 구현체를 만들고, 이를 사용해 Mapping한다. = 처리속도가 훨씬 빠르다. Mapstruct는 10^(-5)m/s, ModelMapper는 2*10^(-3)m/s 컴파일 시 오류를 바로 확인 가능하고 디버깅이 원할하다. 사용하기 Entity정의 먼저 Entity는 내가 올릴 게시글에 관한 내용이다. 글의 ID 글의 제목 글의 내용 작성자 정보@Entity @Data public class Board { @Id..