✅ final 필드나 @NonNull이 붙은 필드들에 대해 생성자를 자동으로 생성해준다 .
✅ Lombok 라이브러리에서 제공하는 어노테이션이다.
✅ 기본 생성자나 다른 생성자는 생성하지 않으므로, 필요하다면 명시적으로 작성해야한다.
@RequiredArgsConstructor
@Service
public class UserService {
private final UserDao userDao;
private final TransactionTemplate transactionTemplate;
}
public UserService(UserDao userDao, TransactionTemplate transactionTemplate) {
this.userDao = userDao;
this.transactionTemplate = transactionTemplate;
}
// 기본 생성자 (매개변수 없는 생성자) - 직접 작성
public Product() {
this.name = "default";
this.price = 0;
}
// 특정 필드만 받는 생성자 - 직접 작성
public Product(String data) {
this.name = "Default Name";
this.price = 0;
this.description = description;
}