Java MBeanExporter和bean的条件加载
我想使用MBeanExporter公开Mbean。但是,要导出的bean不一定总是存在。应如何处理这一问题:Java MBeanExporter和bean的条件加载,java,spring,jmx,mbeans,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=Databas
<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。如果知道设置特定属性时会导致返回null,那么如何将其设置为有条件的(不暴露MBean)。看看spring环境配置文件:
如果特定的环境或配置标志不应该实例化bean,只需使用
@profile
用特定的概要文件标记bean即可。如果bean与活动配置文件不匹配,Spring将不会尝试实例化它。看看Spring环境配置文件:
如果特定的环境或配置标志不应该实例化bean,只需使用
@profile
用特定的概要文件标记bean即可。如果bean与活动概要文件不匹配,Spring将不会尝试实例化该bean。是否可以使用通过PropertyPlaceHolderConfigure加载的属性来决定概要文件的激活您可以使用getEnvironment().addActiveProfile(“概要文件”)
以编程方式设置活动概要文件。然后,您可以设置配置文件的名称,或有条件地设置所选配置文件。在PropertyPlaceHolderConfigure加载属性后,是否可以激活配置文件?是,可以使用我上面提到的方法来完成。是否可以使用通过PropertyPlaceHolderConfigure加载的属性来决定配置文件的激活您可以使用getEnvironment().addActiveProfile(“配置文件”)
以编程方式设置活动配置文件。然后,您可以设置配置文件的名称或有条件地设置所选的配置文件。可以在PropertyPlaceHolderConfigure加载属性后激活配置文件?是的,可以使用我上面提到的方法完成。