컴파일시 코드를 작성하는 기능을 완성해주는 라이브러리
@Setter
value : 접근 제한 속성
onMethod : setter메소드 생성시 메소드에 추가할 어노테이션 지정
예제에는 @Autowired 지정
onParam: setter 메소드의 파라미터에 어노테이션을 사용하는 경우에 적용.
@Data
@Component
@Autowired
@Autowired 대신 생성자 주입
@Component
@ToString
@Getter
public class SampleHotel
{
private Chef chef;
public SampleHotel(Chef chef){
this.chef = chef;
}
}
생성자를 이용한 의존성 주입
생성자 자동주입 + LOMBOK
@Component
@ToString
@Getter
@AllArgsConstructor
public class sampleHotel
{
private Chef chef;
}
@AllArgsConstructor은 인스턴스 변수로 선언된 모든 것을 파라미터로 받는 생성자를 작성한다.
여러개의 인스턴스 변수들 중에서 특정 변수에 대해서만 생성작를 작성하고 싶다면, @NonNull과 @RequiredArgsConstructor을 이용할 수 있다.
@Component
@ToString
@Getter
@RequiredArgsConstructor
public class sampleHotel
{
@NonNull
private Chef chef;
}