Spring 프레임 워 크 의 BeanFactory PostProcessor 대상

일반적인 Bean 대상 은 *. xml 에 정의 되 어 있 으 며 xml 의 각 bean 의 속성 주입 이 매우 편리 합 니 다.
그러나 어떤 때 는 xml 를 읽 을 때 매우 힘 들 고 특히 파일 에서 많은 내용 을 정의 합 니 다.
어떤 정 의 는 다 되 었 고, 기본적으로 바 뀌 지 않 으 며, 어떤 것 은 바 뀌 어야 한다.이 럴 때 는 BeanFactory PostProcessor 인터페이스 로 해결 할 수 있다.
*.beans.factory.config.BeanFactoryPostProcessor;이 명칭 은 빈 팩 토리 에 의존 해서 주입 한 후에 처리 할 수 있 으 며, 구체 적 으로 어떻게 처리 할 지 는 상황 에 따라 결정 된다 는 뜻 이다.
*. beans. factory. config. Property Placeholder Configure 는 BeanFactory PostProcessor 인 터 페 이 스 를 실현 했다.
그것 으로 완성 할 수 있다.
<?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="com.baidu.HelloBean">
        <property name="helloWord">
            <value>${helloWord}</value>//       
        </property>

        ....
    </bean>
   
     ......

</beans>
PropertyPlaceholderConfigurer    hello.properties     location,                helloWord。        

 또 다른 상황 은 높 은 권한 의 통일 을 완성 하 는 것 이다.spring 은 Bean Factory PostProcessor 실현 류 를 제공 합 니 다.
*.beans.factory.config.PropertyOverrideConfigurer;
<?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.PropertyOverrideConfigurer">
        <property name="location">
            <value>hello.properties</value>
        </property>
    </bean>

    <bean id="helloBean" class="com.baidu.HelloBean">
        <property name="helloWord">
            <value>Hello!caterpillar!</value>
        </property>

        ....
    </bean>

     ....
</beans>
helloBean.helloWord=Hello!Justin!

 

좋은 웹페이지 즐겨찾기