当前位置: 首页 > 知识库问答 >
问题:

如何在Spring-Boot中创建DefaultMessageListenerContainer?

长孙嘉
2023-03-14

我是Spring Boot新手,尝试创建DefaultMessageListenerContainer,这样我就可以使用weblogic workmanager并以多线程方式运行多个消息侦听器。

有人能提供一些例子吗?到目前为止,我找到了下面的解决方案,但是我如何在Spring-Boot中实现它呢?

<bean class="org.springframework.jms.listener.SimpleMessageListenerContainer">
    <property name="connectionFactory" ref="connectionFactory"/>
    <property name="destination" ref="destination"/>
    <property name="messageListener" ref="receiver"/>
    <property name="taskExecutor" ref="taskExecutor"/>
</bean>

共有1个答案

陆栋
2023-03-14

创建连接工厂

@Bean
  public ActiveMQConnectionFactory receiverActiveMQConnectionFactory() {
    ActiveMQConnectionFactory activeMQConnectionFactory =
        new ActiveMQConnectionFactory();
    activeMQConnectionFactory.setBrokerURL("yourBrokerUrl");

    return activeMQConnectionFactory;
  }

创建一个DefaultJmsListenerContainerFactory

@Bean
  public DefaultJmsListenerContainerFactory orderDefaultJmsListenerContainerFactory() {
    DefaultJmsListenerContainerFactory factory =
        new DefaultJmsListenerContainerFactory();
    factory
        .setConnectionFactory(receiverActiveMQConnectionFactory());
    factory.setConcurrency("3-10");

    return factory;
  }

创建您的DefaultMessageListenerContainer

@Bean
  public DefaultMessageListenerContainer orderMessageListenerContainer() {
    SimpleJmsListenerEndpoint endpoint =
        new SimpleJmsListenerEndpoint();
    endpoint.setMessageListener(new YourMessageListener());
    endpoint.setDestination("yourDestination");

    return orderDefaultJmsListenerContainerFactory()
        .createListenerContainer(endpoint);
  }

有关更详细的示例,请查看我在SpringJMS侦听器上创建的这篇文章。

 类似资料:
  • 我试图按照这个答案将JDBC TokenStore添加到我的应用程序中。 https://stackoverflow.com/a/37595818/148844 它正在使用MemoryTokenStore中的。我需要知道把代码放在哪里 我试着把它放进去 但是我弄错了 引起原因:org.springframework.beans.factory.BeanCreation异常:创建名为'OAuth2C

  • 如何在SpringBoot2.1.4.RELEASE中创建度量?

  • 我想写一个库,以某种方式完成我总是需要的工作。 这个库应该基于spring-boot并在Spring环境中工作。因此,应该可以在您的pom文件中添加依赖项,然后访问服务。 愚蠢的例子:“库”中的功能 现在我可以在我的另一个项目中做以下事情。

  • 我正在制作一个目录来存储所有上传的文件在我的spring boot应用程序启动时。 此目录的路径存储在application.properties文件中。我正在尝试阅读这个路径,并在项目启动时创建一个目录。在启动时创建目录时,我无法获取路径。

  • 连接:Keep-Alive 主机:webhook.site 内容类型:application/x-www-form-urlencoded

  • 问题内容: 我有一个应用程序,在application.properties中列出了许多数据源设置。我有一个可以加载这些设置的类。现在,我想从此类中获取值,并使用它们来动态创建DataSource bean。我尝试使用和实现。但是,使用时,处理似乎发生在早期-在填充我的课程之前。如何使用Spring Boot快速读取属性并动态创建bean? 这是我的application.properties的样