spring原始碼學習之六 元素處理過程
阿新 • • 發佈:2019-02-18
概述:
</property-placeholder>
主要用來讀取配置資訊替換Bean中的${}佔位符,
常用配置如下:
<context:property-placeholder ignore-resource-not-found="true" location="classpath*:/application.properties" value-separator=":"/>
<bean id="dataSource" class="org.springframework.jdbc.datasource.SimpleDriverDataSource">
<property name="driverClass" value="${jdbc.driver}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username:root}" />
<property name="password" value="${jdbc.password:123456}" />
</bean>
location屬性表明從哪裡載入配置檔案,value-separator用來分割佔位符內變數和預設值,當找不到某個變數時就用預設值替換,如上面dataSource Bean中的username屬性,當在配置檔案中沒有找到jdbc.username這個變數時就將root賦值給username屬性。
</property-placeholder>
<context>
下,是由org.springframework.context.config.PropertyPlaceholderBeanDefinitionParser
解析