Spring boot spring引导配置非公开属性

Spring boot spring引导配置非公开属性,spring-boot,Spring Boot,我使用SpringBoot来配置jms和activemq连接。由于activemq中存在缺陷,我需要在PooledConnectionFactory上设置空闲超时。spring引导不会公开此配置。我如何设置它 我有一个@Bean来创建一个messageListenerContainer,它以connectionFactory作为参数。我可以检查工厂实例并在此处进行配置,但这似乎不是正确的方法。在我看来,向下转换到PooledConnectionFactory并调用setIdleTimeout是一

我使用SpringBoot来配置jms和activemq连接。由于activemq中存在缺陷,我需要在PooledConnectionFactory上设置空闲超时。spring引导不会公开此配置。我如何设置它

我有一个@Bean来创建一个messageListenerContainer,它以connectionFactory作为参数。我可以检查工厂实例并在此处进行配置,但这似乎不是正确的方法。

在我看来,向下转换到PooledConnectionFactory并调用setIdleTimeout是一种完全合理的方法

如果您不希望在创建消息侦听器容器时执行此操作,那么可以在仍然使用ActiveMQProperties的情况下声明自己的ConnectionFactory bean。大概是这样的:

@配置 @EnableConfigurationPropertiesActiviemQProperties.class 类CustomActiveMQConnectionFactoryConfiguration{ @自动连线 私有财产; @豆子 公共连接工厂jmsConnectionFactory{ ConnectionFactory ConnectionFactory=this.properties.createConnectionFactory; 如果连接工厂实例为PooledConnectionFactory{ PooledConnectionFactory connectionFactory.setIdleTimeout1000; } 返回连接工厂; } }
这就是我想要的。我有相同的配置,但没有在我的配置类上添加EnabledConfiguration属性注释。如果PooledConnectionFactory是使用@Bean创建的,那么它可能会更简单。