java spring boot中怎么整合ActiveMQ?有哪些方法?

BSO 2020-11-10 16:12:47 java常见问答 6860

大家都知道,java中关于spring boot的内容是很丰富的,整合ActiveMQ也是有很多的方法的,接下来就为大家介绍几种方法,一起来看看吧。

1.首先是,加入依赖

在pom.xml中加入以下配置,代码如下所示:

<!-- 配置ActiveMQ启动器 -->

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-activemq</artifactId>

</dependency>

2.然后是,创建队列

在引导类中添加以下方法,设置队列,代码如下所示:

@SpringBootApplication
@EnableCaching
public class Application
{
    public static void main(String[] args)
    {
        SpringApplication.run(Application.class, args);
    }
    @Bean
    public Queue queue()
    {
        return new ActiveMQQueue("cnn.queue");
    }
}

3.发送消息

编写Controller,发送消息,代码如下所示:

import javax.jms.Destination;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jms.core.JmsTemplate;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("queue")
public class QueueController
{
    //注入发送消息的对象
    @Autowired
    private JmsTemplate jmsTemplate;
    //注入消息队列
    @Autowired
    private Destination destination;
    //编写发送消息的方法
    @RequestMapping("send/{message}")
    public String send(@PathVariable String message)
    {
        this.jmsTemplate.convertAndSend(destination, message);
        return "消息发送成功!消息内容:" + message;
    }
}

4. 接收消息

编写bean,加入@Component注解让spring管理这个bean,作为接收消息的消费者,代码如下所示:

import org.springframework.jms.annotation.JmsListener;
import org.springframework.stereotype.Component;
@Component
public class Consumer
{
    // 接受消息方法
    @JmsListener(destination = "cnn.queue")
    public void readMessage(String text)
    {
        System.out.println("接受到的消息是:" + text);
    }
}

5.使用外部服务

首先确认有一台外部ActiveMQ服务可以使用

在application.properties中加入以下配置,代码如下所示:

#
ActiveMQ
spring.activemq.broker - url = tcp: //192.168.37.161:61616

这样就加入了ActiveMQ服务的地址

可以看出具体的方法还是比较复杂的,需要花费一定的心思去操作。java spring boot中整合ActiveMQ的方法还是比较多的,大家有兴趣可以多了解一下。想要了解更多java架构师相关知识,敬请关注奇Q工具网。

推荐阅读:

java spring boot中怎么整合Redis?详细解析

java spring boot中怎么编写mapper?怎么编写service和controller?

java spring boot中怎么加入依赖?怎么修改配置文件?