[SPRING] 여러 위치에있는 Spring 속성 자리 표시 자 구성 자의 속성 확인 순서는 무엇입니까?
SPRING여러 위치에있는 Spring 속성 자리 표시 자 구성 자의 속성 확인 순서는 무엇입니까?
내가 구성을 가지고 있다고하자.
<bean id="batchJobProperties" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>first.properties</value>
<value>second.properties</value>
</list>
</property>
</bean>
first.properties에는 "my.url = first.url"속성이 있습니다. second.properties에는 "my.url = second.url"속성이 있습니다.
그래서 어떤 값이 "myUrl"bean에 주입 될 것인가? 속성 정의의 정의 된 순서가 있습니까?
해결법
-
==============================
1.PropertiesLoaderSupport.setLocation 상태를위한 javadoc
PropertiesLoaderSupport.setLocation 상태를위한 javadoc
따라서 second.properties의 my.url 값은 first.properties의 my.url 값을 대체합니다.
-
==============================
2.마지막 하나가 이긴다.
마지막 하나가 이긴다.
props1.properties를 다음과 같이 가정합니다.
prop1=val1
및 props2.properties
prop1=val2
및 context.xml
<context:annotation-config /> <bean id="batchJobProperties" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>/props1.properties</value> <value>/props2.properties</value> </list> </property> </bean> <bean class="test.Test1" />
그때
public class Test1 { @Value("${prop1}") String prop1; public static void main(String[] args) throws Exception { ApplicationContext ctx = new ClassPathXmlApplicationContext("/test1.xml"); System.out.println(ctx.getBean(Test1.class).prop1); } }
인쇄물
val2
문맥을 다음과 같이 바꾼다면
<list> <value>/props2.properties</value> <value>/props1.properties</value> </list>
같은 시험 인쇄
val1
from https://stackoverflow.com/questions/14192373/what-is-property-resolution-order-in-spring-property-placeholder-configurer-with by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 스프링 부트 잭슨에서 기본 표준 시간대를 적용하는 방법 날짜 직렬화 (0) | 2019.04.04 |
---|---|
[SPRING] 메이븐 봄 - 요소 '콩'의 선언을 찾을 수 없습니다 (0) | 2019.04.04 |
[SPRING] ApplicationEventMulticaster가 초기화되지 않았습니다. 컨텍스트를 통해 이벤트를 멀티 캐스팅하기 전에 '새로 고침'을 호출하십시오. (0) | 2019.04.04 |
[SPRING] 스프링 부트 비활성화 / 오류 매핑 (0) | 2019.04.04 |
[SPRING] Spring : 프로토 타입 범위의 bean을 완전히 종료시키는 법? (0) | 2019.04.04 |