MBeanExporter和bean的条件加载

时间:2015-10-20 18:06:59

标签: java spring jmx mbeans

我想使用MBeanExporter来公开Mbean。但是,要导出的bean不一定总是存在。应如何处理:

<bean id="mybean" class="org.springframework.jmx.export.MBeanExporter" lazy-init="false">
    <property name="beans">
        <map>

            <entry key="bean:name=DatabaseDataSource" value="#{datasource.getPool().getJmxPool()}"/>

        </map>
    </property>
</bean>

有时导出失败时,getJmxPool()有时会返回null。如果知道set中的特定属性会导致返回null,那么如何使其成为条件(没有mbeans暴露)。

1 个答案:

答案 0 :(得分:0)

看一下spring环境简介:

http://gordondickens.com/wordpress/2012/06/12/spring-3-1-environment-profiles/

如果特定环境或配置标志不应实例化bean,则只需使用@Profile使用特定配置文件标记bean。如果bean与活动配置文件不匹配,Spring将不会尝试实例化它。