📦 @NoArgsConstructor

정의

@NoArgsConstructorLombok이 파라미터가 없는 기본 생성자를 자동 생성해 주는 애너테이션이다.

기본 생성자는 JPA 엔티티나 프레임워크 연동 시 필요한 경우가 많다.

🧩 역할

  • 파라미터 없는 생성자를 자동 생성한다.
  • JPA, 직렬화, 프레임워크 연동에서 필요한 기본 생성자를 쉽게 만들 수 있다.

🛠 사용법

의존성 추가

dependencies {
    compileOnly 'org.projectlombok:lombok:1.18.22'
    annotationProcessor 'org.projectlombok:lombok:1.18.22'
}

클래스에 적용

@NoArgsConstructor
public class User {
    String name;
    Integer age;
}
  • 위처럼 적용하면 기본 생성자가 생성된다.

⚠️ 주의사항

  • 필드가 final이면 기본 생성자 생성이 제한될 수 있다.
  • JPA 엔티티에서는 기본 생성자가 필요하지만, 무분별하게 public으로 열어둘 필요는 없다.
  • 필요에 따라 access 옵션으로 생성자 접근 수준을 조정할 수 있다.

📌 정리

  • @NoArgsConstructor는 Lombok의 기본 생성자 자동 생성 애너테이션이다.
  • JPA 엔티티에서 자주 사용된다.
  • 필드 제약과 접근 수준을 함께 고려해야 한다.

연결문서

댓글남기기