首页 > 其他分享 >springboot整合activeMQ

springboot整合activeMQ

时间:2023-07-22 23:35:24浏览次数:34  
标签:springboot spring boot springframework 整合 import org activeMQ public

依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.4.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>springboot_demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>springboot_demo</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.24</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-activemq</artifactId>
            <version>2.1.15.RELEASE</version>
        </dependency>

        <dependency>
            <groupId>org.apache.xbean</groupId>
            <artifactId>xbean-spring</artifactId>
            <version>3.7</version>
        </dependency>

        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
        </dependency>

    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

application.yml

server:
  port: 8081
spring:
  activemq:
    broker-url: tcp://192.168.126.128:61616
    user: admin
    password: admin
  jms:
    pub-sub-domain: false # false=queue  true=topic
#定义队列名称
myqueue: boot-activemq-queue

ActiveMQConfig配置类

import org.apache.activemq.command.ActiveMQQueue;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;

import javax.jms.Queue;

@Component
public class ActiveMQConfig {

    @Value("${myqueue}")
    public String myQueue;

    @Bean
    public Queue queue(){
        return  new ActiveMQQueue(myQueue);
    }
}

QueueProduce生产者

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jms.core.JmsMessagingTemplate;
import org.springframework.stereotype.Component;

import javax.jms.Queue;

@Component
public class QueueProduce {

    @Autowired
    private JmsMessagingTemplate jmsMessagingTemplate;

    @Autowired
    private Queue queue;

    public void produceMsg(){
        jmsMessagingTemplate.convertAndSend(queue,"this is a msg");
        System.out.println("发送成功");
    }
}

测试代码

import com.example.springboot_demo.service.QueueProduce;
import org.junit.jupiter.api.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.web.WebAppConfiguration;

@SpringBootTest(classes = SpringbootDemoApplication.class)
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
class SpringbootDemoApplicationTests {

    @Test
    void contextLoads() {
    }

    @Autowired
    private QueueProduce queueProduce;

    @Test
    void produceMsg() {
        queueProduce.produceMsg();
    }

}

 

标签:springboot,spring,boot,springframework,整合,import,org,activeMQ,public
From: https://www.cnblogs.com/ixtao/p/17574511.html

相关文章

  • idea打包springboot项目,打包成war包,如何不把lib目录或指定jar打进去?
    1、在pom.xml文件中添加如下配置:<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration>......
  • springboot3.0 从入门到高级学习路线,技术精讲?
    springboot3.0从入门到高级学习路线,技术精讲?学习SpringBoot3.0的技术精讲需要经历以下几个阶段:阶段一:基础知识学习1.Java基础:熟悉Java编程语言及面向对象的基本概念和语法。2.Spring基础:了解Spring框架的核心概念和基本用法,包括依赖注入、AOP等。3.SpringBoot基础:学习Spr......
  • RabbitMQ(三)整合SpringBoot
    RabbitMQ(三)整合SpringBoot1整合RabbitMQ1导入依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId></dependency>2查看容器的自动配置......
  • 10道SpringBoot面试题
    SpringBoot我是JavaPub,专注于面试、副业,技术人的成长记录。以下是SpringBoot面试题,相信大家都会有种及眼熟又陌生的感觉、看过可能在短暂的面试后又马上忘记了。JavaPub在这里整理这些容易忘记的重点知识及解答,建议收藏,经常温习查阅。评论区见本系列《最少必要面试题》Sprin......
  • SpringBoot整合Liquibase
    1、是什么?Liquibase官网Liquibase是一个开源的数据库管理工具,可以帮助开发人员管理和跟踪数据库变更。它可以与各种关系型数据库和NoSQL数据库一起使用,并提供多种数据库任务自动化功能,例如数据库迁移、版本控制和监控。Liquibase还提供了一个Web界面,可以方便地管理和跟踪数据库......
  • SpringBoot2.x—SpringCache的使用
    SpringCache(1)集成声明式与编程式说起SpringCache您可能不清楚。但您绝对清楚事务。一般使用事务分为编程式和声明式。编程式:事务操作与业务代码耦合,一般我们不会使用这种方式;声明式:AOP的运用,通过注解使得事务代码与业务代码解耦,目前项目中一般都是使用事务注解。而我们平时......
  • SpringBoot学习之路(一):SpringBoot的开发环境
    【说在前面的话】    作为一个java小白,从自己写下“HelloWorld!”开始,到现在使用spring框架开始写一点小练习项目,让自己的一开始对java的好奇,变成现在要掌握它的目标。身为一个学生,我现在还是有很多的时间去学到更多的,俗话说:“好记性不如烂笔头”,我虽然做不到,但是“烂键......
  • springboot三
    神器之整合通用Mapper的开发方法通用mapper的开发方法是做练习的神器,它是基于mybatis的一款MyBatis增强插件,可以提供一些常用增、删、改、查的操作,不需要重复写一些常用的sql。简化操作,精简代码,并且达到代码风格统一的目的。它的出现不是为了替代mybatis,而是让myb......
  • ssm整合
    一、准备工作1、导入依赖jar包<dependencies>  <!--Junit-->  <dependency>    <groupId>junit</groupId>    <artifactId>junit</artifactId>    <version>4.12</version>  </dependency>  <!--数据库驱动--&g......
  • springboot二
    对springboot的一些补充在具体的应用开发中可以使用properties配置文件或者yaml配置文件两种一般建议开发中首选yml格式的文件,文件后缀可以是yml或者yaml。可以通过格式缩进的方式表达层次结构。解析yml格式的文件需要依赖snakeyaml,这个依赖由web-starter依赖引......