我需要获取使用 Spring Boot 应用程序启动生成的 ConnectionFactory 实例,@Configurationpublic class Config { @Bean public ConnectionFactory connectionFactory() { CachingConnectionFactory connectionFactory = new CachingConnectionFactory("localhost"); return connectionFactory; }}public class Consumer { @Autowired Config config; public void request(Queue queue) { ConnectionFactory cf=config.connectionFactory(); }}即使该值是自动连接的,我也将配置对象设置为 null,并且有什么方法可以在加载 SpringBoot 应用程序后获取连接工厂实例。当前是否可以在不使用静态的情况下获取实例?我将实例设置为静态对象并检索它,但我需要使用现有的连接工厂实例而不使用静态方法。请建议如何实施?
1 回答
largeQ
TA贡献2039条经验 获得超7个赞
向 Spring bean 工厂注册@Bean一个实例。ConnectionFactory所以你应该@Autowire这样做。并且Consumer应该标记为@Component或等效的,以便 Spring 可以管理填充@Autowiredbean。
@Component
public class Consumer {
@Autowired ConnectionFactory cf;
public void request(Queue queue) {
// use the connection factory here
}
}
添加回答
举报
0/150
提交
取消