가끔 빈을 직접 생성해서 사용하고 싶은 경우가 있다.
우선 configuration 파일들이 모여있는 패키지에 appConfig를 만든다.
다음 @Configuration 어노테이션을 선언해주고 그 아래 빈을 선언해준다.
@Configuration
public class Appconfig {
@Bean
List<Article> articles() {
return new LinkedList<>();
이렇게 만들어준 코드를 아래와 같이 적용해본다.
@Repository
@RequiredArgsConstructor
public class ArticleRepository {
private final List<Article> articles;
위와 같이 Bean으로 등록하면 기존에
private final List<Article> articles = new LinkedList<>();
이 코드를 축약할 수 있다.
여기서 주의할 점은 기존 코드의 변수명이 AppConfig파일의 메서드명과 같고, 서로의 리턴 타입이 같아야 인식이 가능하다.