[Spring Data JPA] JPA 엔티티 설계 시 생성자 접근 제한을 PROTECTED로 설정하는 이유
·
BackEnd/Spring & JPA
1. 시작하며Spring Data JPA를 활용하여 애플리케이션을 개발하다 보면 엔티티(Entity) 설계는 매우 중요한 요소로 다가옵니다. 특히, Entity의 생성자 접근 제한과 같은 세부적인 설계는 시스템의 안정성과 데이터 일관성을 유지하는 데 큰 영향을 미칩니다.이번 글에서는 회원 엔티티(Entity)를 설계하며 @NoArgsConstructor와 @AllArgsConstructor를 AccessLevel.PROTECTED로 제한한 이유를 다룹니다. 이러한 설계가 가지는 장점과 실제로 어떤 효과를 기대할 수 있는지에 대해 설명합니다.2. JPA 엔티티 기본 설계JPA 엔티티는 데이터베이스 테이블과 1:1로 매핑되는 클래스입니다. 아래는 Member 엔티티의 예시입니다.@Entity@Getter@B..