JPA 3

[클러버] JPA 상속 매핑에 대한 고민

클러버 프로젝트에서 마주친 테이블 설계 중 상속 매핑에 관련된 고민이 있어 이를 정리하고자 한다.  [문제상황] 현재 프로젝트에서는 동아리 테이블이 있는데 종류는 크게 중앙동아리(centerclub)과 소모임(smallclub) 2가지가 있다. DB에는 상속 관계가 없지만 편의를 위해 시각화를 하자면 다음과 같다.  [공통점] 동아리 이름, 소개, 해시태그 등이 있다.  [차이점] 중앙동아리는 소속 분과(학술, 봉사 ..)가 있으며 소모임은 중앙동아리와 다르게 분과는 존재하지 않지만 소속 단과대나 학과는 존재한다. [중앙 동아리] - 분과 O, 단과대 X, 학과 X [소모임] - 분과 X, 단과대 O, 학과 O  DB 테이블 설계 위에서 언급한 이유들로 인해 상속 매핑을 생각해보았다. JPA 상속 매핑을..

클러버 2024.06.23

[JPA] JPA Entity 생성자의 접근 제어자 with @Builder

개요 아래 글에서는 lombok의 @Builder를 사용하여 JPA Entity 클래스를 구성하는 방법을 살펴 보았다. https://minjun98.tistory.com/103 [JPA] lombok @builder 위치 : Constructor vs Class개요 해당 글에서는 다음과 같은 내용을 다룬다. - @builder의 동작 원리 - lombok의 @builder 어노테이션의 위치 선택 @builder 동작 원리 사용하려는 예시는 jpa entity 클래스를 예시로 한다. 사용하려는 Usminjun98.tistory.com- 오늘은 생성자의 접근 제어자를 어떻게 설정할 것인지에 대해 다룬다.  고려 대상 및 기준 선택 기준은 빌더 패턴을 적용하려는 목적과 관련이 깊으며 new 연산자를 사용하여..

JPA 2024.04.05

[JPA] JPA Entity 클래스에서의 @builder 위치 : Constructor vs Class

개요해당 글에서는 다음과 같은 내용을 다룬다.  - @builder의 동작 원리 - JPA Entity에서의 lombok의 @builder 어노테이션의 위치 선택 @builder 동작 원리사용하려는 예시 User Entity는 다음과 같다. 아직 @builder 패턴은 적용하지 않은 상태이다. @Entity@Getter@NoArgsConstructor(access = AccessLevel.PROTECTED)public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @NotNull @Column(unique = true) private String email; @..

JPA 2024.04.05