응용 프로그램에 Spring과 Java를 사용하고 있으며 @Value
주석을 사용하여 속성 값을 주입하고 싶습니다. 내 사용 사례는 해당 속성이 시스템으로 존재하는지 먼저 확인하는 것입니다. 속성 (우선 순위를 가짐), 그렇지 않으면 기본 구성 속성 (속성 파일에 있음)
주석이 달린 코드에서 내가 달성하려는 것을 볼 수 있습니다. 단순한 문자열이 아닌 다른 것을 기본값으로 사용할 수 있습니까? 그렇지 않은 경우 어떻게 할 수 있습니까?
//@Value("#{configProperties['local.datasource.username']}") THIS IS THE ORIGINAL CODE
//@Value("#{systemProperties['some.key'] ?: 'my default system property value'}") THIS IS HOW SPRING PROPOSE TO SET A DEFAULT VALUE
//@Value("#{systemProperties['some.key'] ?: #{configProperties['local.datasource.username']}}") THIS IS WHAT I WANT TO ACHIEVE, HOWEVER NOT COMPILING,
private String username;