SpringBoot怎样整合ActiveMQ? | 带你读《SpringBoot实战教程》之三十五-阿里云开发者社区

开发者社区> 开发者学习资源库> 正文

SpringBoot怎样整合ActiveMQ? | 带你读《SpringBoot实战教程》之三十五

简介: 本节通过SpringBoot整合ActiveMQ,实现消息的发送和接收。

上一篇:SpringBoot如何集成MongoDB? | 带你读《SpringBoot实战教程》之三十四
下一篇:SpringBoot怎样整合RabbitMQ? | 带你读《SpringBoot实战教程》之三十六

本文来自于千锋教育在阿里云开发者社区学习中心上线课程《SpringBoot实战教程》,主讲人杨红艳,点击查看视频内容

SpringBoot整合ActiveMQ

ActiveMQ是符合JMS规范的消息管理者。
如何使用呢?
在工程中添加依赖:

<!-- 整合ActiveMQ的依赖 -->
       <dependency>  
            <groupId>org.springframework.boot</groupId>  
            <artifactId>spring-boot-starter-activemq</artifactId>  
       </dependency> 

全局配置文件进行配置

spring.activemq.broker-url=tcp://192.168.25.129:61616
spring.activemq.in-memory=true
spring.activemq.user=admin
spring.activemq.password=admin
#如果此处设置为true,需要加如下面的依赖包,否则会自动配置失败,JmsMessagingTemplate
spring.activemq.pool.enabled=false

依赖如下:

<dependency>  
                <groupId>org.apache.activemq</groupId>  
                <artifactId>activemq-pool</artifactId> 
     </dependency> 

如何实现消息的发送和消息的接收?
新建包:com.qianfeng.activemq:

@Component
public class Producer {

   @Autowired
    private JmsMessagingTemplate jmsTemplate;


    //发送消息
    public void sendMessage(Destination des, String message) {
        jmsTemplate.convertAndSend(des, message);
     }
}


@Component
public class Consumer {

    @JmsListener(destination="myqueues")
    public void receiveMsg(String text) {
        System.out.println(text+"......");
    }
}

新建包com.qianfeng.controller:

@Controller
public class TestController {

    @Autowired
    private Producer producer;


    @RequestMapping("/activemq")
    @ResponseBody
    public String tests() {
        //点对点消息
        Destination des = new ActiveMQQueue("myqueues");
        for(int i = 1; i <= 3; i++) {
            producer.sendMessage(des, "hello");
        }
        return "ok";
    }
}

在启动类中添加所有需要扫描的包:

@SpringBootApplication(scanBasePackages="com.qianfeng")

执行结果:
image.png
image.png

配套视频

版权声明:本文中所有内容均属于阿里云开发者社区所有,任何媒体、网站或个人未经阿里云开发者社区协议授权不得转载、链接、转贴或以其他方式复制发布/发表。申请授权请邮件developerteam@list.alibaba-inc.com,已获得阿里云开发者社区协议授权的媒体、网站,在转载使用时必须注明"稿件来源:阿里云开发者社区,原文作者姓名",违者本社区将依法追究责任。 如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:developer2020@service.aliyun.com 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:

开发者免费资源中心,技术电子书、会议PPT、论文资料持续供应中

官方博客
官网链接