我想使用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暴露)。
答案 0 :(得分:0)
看一下spring环境简介:
http://gordondickens.com/wordpress/2012/06/12/spring-3-1-environment-profiles/
如果特定环境或配置标志不应实例化bean,则只需使用@Profile
使用特定配置文件标记bean。如果bean与活动配置文件不匹配,Spring将不会尝试实例化它。