programing

Spring application.properties 파일에서 식 사용

muds 2023. 7. 5. 21:02
반응형

Spring application.properties 파일에서 식 사용

식을 Spring application.properties 파일에서 오른쪽 값으로 사용할 수 있습니까?

예를 들어, 다음과 같은 것이 있습니다.

logging.level.com.acme=#{'${MY_RUN_ENV}'=='PROD'?'WARN':'DEBUG'}

특히, 그것은 효과가 없습니다.하지만, 거기서 의도한 것과 비슷한 것을 할 수 있을지 궁금합니다.

아니요. 속성 파일 내에서 SpEL을 사용할 수 없습니다.

마지막으로 @Value에 SpEL 식을 작성할 수 있지만 응용 프로그램 속성 파일에서 해당 식을 처리하지 않습니다.

그러나 속성 파일 내에서 자리 표시자를 사용할 수 있습니다. 예:

app.name=MyApp
app.description=${app.name} is a Spring Boot application

사용 사례의 경우 프로파일별 구성 메커니즘을 살펴봐야 합니다.

따라서 환경 프로파일을 기반으로 다른 구성을 로드할 수 있습니다.

아니요, 스프링 부트 참조:

기능 @구성 속성

SpEL 평가 번호

대신에 당신은 가질 수 있습니다.application-default.properties생산에 있어서 그리고 그 안에서 정의합니다.loglevel=WARN그리고 당신의 안에서application.properties:

loglevel=DEBUG
logging.level.com.acme=${loglevel}

프로파일별 속성 파일(기본값 -)은 다음의 속성을 재정의해야 합니다.application.properties자세한 내용은 여기를 참조하십시오.

프로필 기반 속성 파일을 사용합니다.

application-dev.properties에서 : logging.level.com .acme=경고

application-properties.properties: logging.level.com .acme=DICOM

참고로 스프링 부트가 프로필 기반 파일에서 속성을 찾지 못하면 기본 파일의 값을 사용합니다.따라서 application.properties에서 속성을 설정하고 값이 변경되면 프로필 기반 파일에서 속성을 재정의할 수 있습니다.

언급URL : https://stackoverflow.com/questions/45704466/using-expressions-in-spring-application-properties-file

반응형