`
zk_chs
  • 浏览: 215885 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

spring boot + ActiveMQ 实现消息服务

 
阅读更多

上篇博客带来的是spring boot + redis实现session共享的文章,这次给大家带来的是spring boot + activemq。

 

首先,我在github上找到了一个不错的demo,这里放给大家一起看下:

https://github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-activemq

 

确实可以实现功能,但是当我在8161默认的admin端口进行queue查询时,发现并没有我们的github-queue,虽然不太清楚具体的原因,但是解决方式倒是找到了,下面贴一下自己的实现:

pox.xml:

<!-- ActiveMQ -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jms</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.activemq</groupId>
            <artifactId>activemq-all</artifactId>
            <version>5.13.2</version>
        </dependency>

application.properties:

spring.activemq.in-memory=true
spring.activemq.pooled=false

 

 

接下来就是jms的配置了,首先是ActiveMQ4Config文件:

@EnableJms
@Configuration
public class ActiveMQ4Config {

    @Bean
    public Queue queue() {
        return new ActiveMQQueue("github-queue");
    }

    @Bean
    public ActiveMQConnectionFactory activeMQConnectionFactory (){
        ActiveMQConnectionFactory activeMQConnectionFactory =
                new ActiveMQConnectionFactory(
                        ActiveMQConnectionFactory.DEFAULT_USER,
                        ActiveMQConnectionFactory.DEFAULT_PASSWORD,
//                        "tcp://192.168.0.100:61616");
                        ActiveMQConnectionFactory.DEFAULT_BROKER_URL);
        return activeMQConnectionFactory;
    }

}

注释掉的那行,可以用来指定activemq的broker地址。

 

接下来的Producer和Consumer与github上一样:

@Component
public class Producer implements CommandLineRunner{

    @Autowired
    private JmsMessagingTemplate jmsMessagingTemplate;

    @Autowired
    private Queue queue;

    @Override
    public void run(String... args) throws Exception {
        send("this message is send on begining!");
        System.out.println("Message was sent to the Queue");
    }

    public void send(String msg) {
        this.jmsMessagingTemplate.convertAndSend(this.queue, msg);
    }

}
@Component
public class Consumer {

    @JmsListener(destination = "github-queue")
    public void receiveQueue(String text) {
        System.out.println(text);
    }

}

 

这样一来就完成了配置,而且在8161默认admin进行查询时,是能够查询到我们的github-queue这个队列的。

具体的测试,可以自己进行,这里不再贴测试用例了。

 

 

分享到:
评论
1 楼 fcs_our2010 2017-01-17  
赞一个的说

相关推荐

    SpringBoot+ActiveMq+MQTT实现消息的发送和接收

    这通常包括`spring-boot-starter-activemq`和`org.apache.activemq:activemq-client`,以及可能的MQTT客户端库,如`org.eclipse.paho:org.eclipse.paho.client.mqttv3`。 2. 配置ActiveMQ:在`application....

    Spring boot+ActiveMQ整合消息队列实现发布订阅、生产者消费者模型(适合开发人员了解学习ActiveMQ机制)

    本项目基于Spring这一平台,整合流行的开源消息队列中间件ActiveMQ,实现一个向ActiveMQ添加和读取消息的功能。并比较了两种模式:生产者-消费者模式和发布-订阅模式的区别。 包含的特性如下: 1.开启activeMQ,访问...

    springboot-nettysocketio +netty+activeMq在线客服系统

    springboot +netty+activeMq在线客服系统springboot +netty+activeMq在线客服系统springboot +netty+activeMq在线客服系统springboot +netty+activeMq在线客服系统springboot +netty+activeMq在线客服系统springboot...

    jms Spring+ActiveMQ 5.4.2

    标题 "jms Spring+ActiveMQ 5.4.2" 涉及的是Java消息服务(JMS)在Spring框架中的应用,以及ActiveMQ作为消息代理的使用。在这个主题下,我们将深入探讨JMS的基本概念、Spring对JMS的支持以及ActiveMQ 5.4.2版本的...

    Spring+ActiveMQ整合实例代码工程

    在Java开发中,Spring框架是极为重要的应用基础,而ActiveMQ作为Apache出品的一款开源消息中间件,常被用于实现应用间的异步通信和解耦。本实例代码工程"Spring+ActiveMQ整合实例代码工程"正是结合两者,展示了如何...

    SpringBoot整合ActiveMQ+websocket.docx

    在Spring Boot应用中整合ActiveMQ和WebSocket,可以创建一个实时通信系统,使后端服务能够高效地推送消息到前端客户端。以下将详细解释这个过程的关键知识点: 1. **ActiveMQ**:Apache ActiveMQ是一个开源的消息...

    spring-boot-activemq-demo

    在本示例项目"spring-boot-activemq-demo"中,我们关注的是如何将Spring Boot与Apache ActiveMQ集成,以实现高效的消息传递功能。ActiveMQ是Apache软件基金会的一个开源项目,它是Java消息服务(JMS)的实现,提供了...

    springboot整合mybatis+activemq(activemq可以去官网下载 )

    在IT行业中,Spring Boot、MyBatis和ActiveMQ是三个非常重要的组件,分别用于简化Spring应用的初始化,处理持久化操作以及实现消息队列。本文将深入探讨如何将这三个技术整合到一个项目中,以便构建高效、可扩展的...

    基于Springboot+ActiveMQ事务==本地事件表+activemq.zip

    本项目基于Springboot和ActiveMQ实现了一种分布式事务解决方案,它利用了“本地事件表”和ActiveMQ来协调跨服务的数据操作。接下来,我们将深入探讨这个方案的各个组成部分以及它们如何协同工作。 首先,Springboot...

    Spring Boot整合ActiveMQ

    在 Spring Boot 中整合 ActiveMQ,可以使用 Spring 的 JmsTemplate 或者 @JmsListener 注解来发送和接收消息,实现应用间的异步通信和解耦。 整合以上技术的过程通常包括以下步骤: - 添加对应库的依赖,如 spring...

    spring boot+dubbo+zookeeper+redis+activitmq

    Dubbo 可以与 Spring 集成,实现服务的声明式调用。 3. **Zookeeper**: ZooKeeper 是一个分布式的,开放源码的分布式应用程序协调服务,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下...

    spring boot 集成activemq Datajpa Ehcache

    在Spring Boot中集成ActiveMQ,我们可以利用Spring的`@EnableJms`注解来启用JMS支持,并通过配置ActiveMQ服务器的URL、用户名和密码等信息,实现消息的发送和接收。这将极大地提升系统的异步处理能力和可扩展性。 ...

    基于Spring Boot的ActiveMQ消息队列整合与设计源码

    该项目为基于Spring Boot框架整合ActiveMQ消息队列的设计源码,共计包含30个文件,涵盖10个Java源代码文件、4个CSS样式文件、3个JavaScript脚本文件以及2个XML配置文件、2个映射文件、1个Git忽略规则文件、1个...

    Spring boot 和内置ActiveMQ集成例子.zip

    将Spring Boot与ActiveMQ集成可以提供强大的消息处理能力,使应用能够解耦组件,提高可扩展性和容错性。 本文将详细讲解如何使用Spring Boot与内置的ActiveMQ进行集成,以及如何通过代码实现这一过程。 首先,我们...

    springboot集成activemq实现消息接收demo

    本教程将详细介绍如何在Spring Boot项目中集成ActiveMQ,实现消息接收的Demo。 首先,我们需要在Spring Boot项目中引入ActiveMQ的相关依赖。在`pom.xml`文件中添加以下Maven依赖: ```xml &lt;groupId&gt;org.spring...

    JAVA编程之Spring boot-activeMQ示例

    本项目基于Spring boot这一平台,整合流行的开源消息队列中间件ActiveMQ,实现一个向ActiveMQ添加和读取消息的功能。分别实现生产者-消费者模式和发布-订阅模式,作为java编程发送消息和消费消息的基础示例。 源码...

    Springboot ActiveMQ 集成.rar

    当我们需要在Spring Boot应用中集成ActiveMQ时,我们可以实现高效、异步的通信机制,提高系统的可扩展性和解耦性。 首先,让我们详细探讨一下Spring Boot与ActiveMQ的集成过程: 1. **配置ActiveMQ** - 在`...

    spring boot activemq整合例子

    Spring Boot 是一个流行的Java开发框架,...通过以上步骤,你可以在Spring Boot项目中轻松集成并使用ActiveMQ,实现消息的高效传输和处理。这为构建分布式系统、解耦组件间的依赖以及实现异步任务执行提供了强大支持。

    Springboot+ActiveMq

    Springboot与ActiveMQ的整合是企业级应用中常见的一种消息中间件集成方式,它能有效地实现系统间的异步通信和解耦。在这个项目中,我们将深入探讨如何利用Springboot搭建一个简单的ActiveMQ发送和接收消息的系统。 ...

    微服务架构面试题系列:Dubbo+Spring Boot+Spring Cloud.zip

    在微服务架构中,Spring Boot常作为服务的起点,开发者可以快速创建独立的、生产级别的基于Spring的应用。面试时可能会涉及Spring Boot的自动配置、起步依赖、Actuator监控以及如何与外部配置中心集成等内容。 再者...

Global site tag (gtag.js) - Google Analytics