JPA에서는 프록시 생성을 위해 @NoArgsConstructor
를 강제하게 되는데, 이때 AccessLevel을 따로 설정해주지 않으면 외부에서 생성자에 쉽게 접근할 수 있게 된다.
유지 보수성을 최대화하고 접근 가능성을 최소화하기 위해 AccessLevel을 PROTECTED 이하로 거는 것이 좋다.
@Entity
@NoArgsConstructor(access = AcessLevel.PROTECTED)
public class User {
}