[Spring] @RequiredArgsConstructor, @AllArgsConstructor

null·2023년 3월 16일
0

[nmBoard] 게시판

목록 보기
2/9

@RequiredArgsConstructor

  • Lombok 어노테이션 중 하나로, 클래스의 모든 'final' 필드를 인자로 받는 생성자를 생성
import lombok.RequiredArgsConstructor;

@Controller
@RequiredArgsConstructor
public class BoardController {
	
	private final BoardService boardService;
}
  • fianl이 아닌 필드의 생성자 생성은 @AllArgsConstructor 사용해야 한다

  • @NonNull : 생성자와 메서드 인자에 대한 null체크도 자동으로 생성 가능

import lombok.NonNull;

public class MyClass {
    private String name;

    public MyClass(@NonNull String name) {
        this.name = name;
    }

    public void setName(@NonNull String name) {
        this.name = name;
    }
}

@AllArgsConstructor

  • Lombok 어노테이션 중 하나로 클래스 내의 모든 필드를 초기화할 수있는 생성자를 자동으로 생성
import lombok.AllArgsConstructor;

@AllArgsConstructor
public class User {
    private String name;
    private int age;
    
    public User(String name, int age, String address) { // 자동으로 생성자 생성
    this.name = name;
    this.age = age;
	}
}

0개의 댓글