@Getter/@Setter : 자동으로 get/set을 생성해준다
- getXXX(), setXXX(), (boolean은 isXXX()) 자동 생성
- 기본적으로 접근제한자는 public
- @Getter(AccessLevel.PRIVATE)과 같이 처리할 수 있다.
- AccessLevel : PUBLIC, PROTECTED, PACKAGE, PRIVATE
- 필드에 @Getter,Setter를 지정할 수도 있지만 클래스에 붙여도 된다.
- 클래스에 생성하고 특정 필드의 getter/setter를 생성하고 싶지 않으면 AccessLevel.None을 달아주면 된다.
@NoArgsConstructor : 기본 생성자 생성 (매개변수 X)
- input 파라미터가 없는 생성자를 자동으로 생성해준다
- @NonNull과 같은 제약조건에 대한 로직은 생성해주지 않는다.
- final필드 있는 경우: 에러가 발생한다. // 이때는 @NoArgsConstructor(force = true) 옵션으로 final 필드(0/false/null) 등 강제 초기화로 생성가능
@RequiredArgsConstructor : 필드의 추가 조건 생성자 생성
- final 필드, @NonNull 필드에 대한 생성자 자동 생성
- null값이 들어온다면 NullPointerException이 발생
if(name == null){
throw NullPointerException("name is null");
}
->
// LOMBOK 이용
@NonNull
private String name;
@AllArgsConstructor : 모든 필드값을 받는 생성자 자동 생성
- 모든 필드 생성자 자동 생성
- @NonNull의 null-check 로직도 자동 생성
'DEV > SpringFramework' 카테고리의 다른 글
private method Test (0) | 2022.07.05 |
---|---|
[Spring] Build 후 실행 (0) | 2021.09.12 |
[Spring] application. properties 변수 맵핑 (0) | 2021.09.12 |
[Spring] Server 구축 [1] (0) | 2021.09.09 |