您的位置:首页 > 编程语言 > Java开发

Spring之BeanFactoryPostProcessor框架下PropertyPlaceholderConfigurer类

2016-07-27 09:32 477 查看

使用方式

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING/DTD BEAN/EN"
"http://www.springframework.org/dtd/spring-beans.dtd">

<beans>
<bean id="configBean"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location">
<value>hello.properties</value>
</property>
</bean>

<bean id="helloBean" class="onlyfun.caterpillar.HelloBean">
<property name="helloWord">
<value>${onlyfun.caterpillar.helloWord}</value>
</property>
</bean>
</beans>


其中hello.properties文件中的内容为:

onlyfun.caterpillar.helloWord=Welcome!


原理

其中PropertyPlaceholderConfigurer正是BeanFactoryPostProcessor的一个重要实现。

Allows for custom modification of an application context’s bean definitions, adapting the bean property values of the context’s underlying bean factory.

A BeanFactoryPostProcessor may interact with and modify bean definitions, but never bean instances.

由此可见,BeanFactoryPostProcessor只能处理BeanDefinition; 是在所有Bean 实例化之前就执行的。

未完待续…
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring