小编Tar*_*ani的帖子

使用单个 Spring Boot 应用程序收听多个 IBM MQ

我需要收听多个队列(存在于同一个队列管理器中)。我有用于侦听单个队列的有效 Spring Boot 应用程序代码。但是有什么方法可以从单个 Spring Boot 应用程序连接到多个队列吗?

如果我可以在运行时将侦听器从一个队列切换到另一个队列,还有吗?

我有从单个队列中读取的代码,如下所示:

public class ConnectionConfiguration {

  private static final Logger logger = LogManager.getLogger(ConnectionConfiguration.class);

  @Value("${LDR_LOCAL_MQ_READ_FACTORYNAME}")
  String connectionFactory;

  @Value("${LDR_LOCAL_MQ_QUEUENAME}")
  String localQueue;

  @Value("${jmsConcurrency}")
  String concurrency;

  @Value("${servers.mq.host}")
  private String host;

  @Value("${servers.mq.port}")
  private Integer port;

  @Value("${servers.mq.queue-manager}")
  private String queueManager;

  @Value("${servers.mq.channel}")
  private String channel;

  @Value("${servers.mq.queue}")
  private String queue;

  @Value("${servers.mq.timeout}")
  private long timeout;

  @Bean
  public ConnectionFactory connectionFactory() {

    JndiObjectFactoryBean jndiObjectFactoryBean = new JndiObjectFactoryBean();
    jndiObjectFactoryBean.setResourceRef(true);
    jndiObjectFactoryBean.setJndiName(connectionFactory);
    try {
      jndiObjectFactoryBean.afterPropertiesSet();
    } catch (IllegalArgumentException e) {
      logger.error(e.getMessage(), e);
      e.printStackTrace();
    } catch (NamingException e) …
Run Code Online (Sandbox Code Playgroud)

java spring-jms spring-boot ibm-mq

6
推荐指数
1
解决办法
6550
查看次数

标签 统计

ibm-mq ×1

java ×1

spring-boot ×1

spring-jms ×1