회사에서는 yml파일이 아닌 profiles파일을 사용중인데, 클래스를 Bean으로 등록하면서 필드의 값을 @Value 어노테이션을 통해 주입받는 형태로 구성했다.
BeanTest.java
@Slf4j
@Component
public class BeanTest {
@Getter
@Value("${custom.message}")
String customMessage;
public BeanTest() {
log.debug("TestBean.customMessage={}", customMessage);
}
}
application.yml
custom:
message: 야호~
BeanTest.java
@Slf4j
@Component
public class BeanTest {
....
@PostConstruct
public void init() {
log.debug("PostConstruct: TestBean.customMessage={}", customMessage);
}
}
위의 BeanTest.java
에 @PostConstruct 어노테이션을 붙힌 메소드를 추가하면 Bean이 등록된 후 콜백으로 실행이 된다.
오늘 오전시간 대부분을 Bean생성에 보내서 다시한번 기초의 소중함을 느끼게 되었다.