springboot集成activeMq实战

1.首先搭建好activeMq服务器

参考我的上一篇文章:Linux搭建activMq服务

2. 创建springboot项目

参考我的文章:springboot实战

3. maven依赖引入

<!-- activemq start -->
    <!-- mq依赖 -->
	 <dependency>  
            <groupId>org.springframework.boot</groupId>  
            <artifactId>spring-boot-starter-activemq</artifactId>  
        </dependency> 
     <!-- mq连接池 -->
        <dependency>
	     <groupId>org.apache.activemq</groupId>
	     <artifactId>activemq-pool</artifactId>
        </dependency>
<!-- activemq end -->

4.application.properties文件配置

# activemq配置  
spring.activemq.broker-url=tcp://IP:61616
spring.activemq.user=admin
spring.activemq.password=admin
spring.jms.pub-sub-domain=false
spring.activemq.pool.enabled=true
spring.activemq.pool.max-connections=50
spring.activemq.pool.expiry-timeout=10000
spring.activemq.pool.idle-timeout=30000
#注意 对象传输需开启包白名单 否则会报错- -
spring.activemq.packages.trust-all=true

5. 生产者代码

@Component
public class JMSProducer {
	@Autowired
    private JmsMessagingTemplate jmsMessagingTemplate;

	public void sendMessage(Destination destination,String message) {
        this.jmsMessagingTemplate.convertAndSend(destination,message);
    }
	public void send(String message) {
		Destination destination = new ActiveMQQueue("com.xue.demo");
		jmsMessagingTemplate.convertAndSend(destination, message);
    }
}

6.消费者代码

@Component
public class JMSConsumer {
    private final static Logger logger = LoggerFactory.getLogger(JMSConsumer.class);

    @JmsListener(destination = "com.xue.demo")
    public void receive(String message) {
    	logger.info("接收到消息:{}",message);
        System.out.println("收到的 message 是:" + message);
    }
}

7.测试类代码

        @Autowired
	private JMSProducer jp;
	
	@RequestMapping("/send")
	public String send() {
		jp.send("i am producer");
		logger.info("i am producer");  
		return "success";
	}

8.结果


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值