栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java > SpringBoot

SpringBoot 系列教程之 RabbitMq 初体验

SpringBoot 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringBoot 系列教程之 RabbitMq 初体验

![](http://img2.sycdn.imooc.com/5e43de8c00014fe509600380.jpg

[【SpringBoot MQ系列教程】RabbitMq初体验](https://mp.weixin.qq.com/s/Oq7NsHB9nrDG_4W8KKMD0A

mq在异步解压缩压缩压缩尖锐峰的优势非常突出,现在很多的项目都会用到,掌握mq的知识点,了解如何顺畅的使用mq,可以说是必不可少的职业技能点了

接下来我们进入rabbitmq的学习过程

<!-更多->

I.环境准备

在测试之前,需要安装rabbitmq,下面分别指定mac + centos的安装教程

1. mac安装

安装命令

BREW安装的RabbitMQ的##进入安装目录CD /usr/local/Cellar/rabbitmq/3.7.5#启动BREW服务启动的RabbitMQ的#当前窗口启动的RabbitMQ的服务器```启动控制台之前需要先开启插件```庆典./rabbitmq-plugins使rabbitmq_management ```进入控制台:HTTP://本地主机:15672 /用户名和密码:客人,客人### 2的的centos的安装安装命令` ``sh yum install erlang wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.15/rabbitmq-server-3.6.15-1.el6.noarch.rpm yum install rabbitmq-server-3.6。 15- 1.el6 .noarch.rpm ```插件开启``` SH的RabbitMQ的的-插件使rabbitmq_management#启动的RabbitMQ的的服务器-detached ``` ### 3.配置添加账号,设置权限










































bash ##添加账号./rabbitmqctl add_user管理员admin ##添加访问权限./rabbitmqctl set_permissions -p“ /” admin“。*”“。*”“。*” ##设置超级权限。/rabbitmqctlset_user_tags管理员的`### 4.项目环境接下我们创建了一个SpringBoot项目,用于简单的体验一下Rabbitmq的发布和消费消息-springboot版本为`2.2.1.RELEASE` -RabbitMQ的版本为`3.7。5 `依赖配置文件的pom.xml的```的XML <父> <的的groupId> org.springframework.boot  弹簧引导起动父 <版本> 2.2.1。释放 <     relativePath /> <!-从存储库中查找父级->  <属性>  UTF-8  <项目。 report.outputEncoding> UTF-8   1.8   <依赖关系> <依赖关系> 



  















    
    
    




    
    
    



    
 org.springframework.boot   spring-boot-starter-amqp     org.springframework.boot   spring-boot-starter -web        org.springframework.boot   spring-boot-maven-plugin      <存储库> <存储库> 春天快照 春天快照  https:/ /repo.spring.io/libs-snapshot-local  <快照> <已启用>true    <组件>  spring-例程  Spring Milestones   https://repo.spring.io/ libs-milestone-local 
 
    
    
 
 
    



    
 

  
  
     
 
    


    
 

 
 
     
 
    
    
 
 
 
 <快照> <已启用>错误   <存储库>  spring-releases   Spring Releases   https: //repo。spring.io/libs-release-local <快照> <已启用> false     ```在`application.yml`配置文件中,添加Rabbitmq的相关属性```yml spring :Rabbitmq :虚拟主机: / 用户名:管理员密码:管理员端口:5672` ''
     
 
    
    
 
 
 
 










  
    
    
    
     


## II. 实例演示

接下来我们看一个`hello world`版本的 rabbitmq 的使用姿势,一个简单发布消息、消费消息

### 1. 发布消息

消息发布,我们主要借助`AmqpTemplate`来实现

```java
@Component
public class PublishDemo {
    @Autowired
    private AmqpTemplate amqpTemplate;

    public String publish2mq(String ans) {
 String msg = "hello world = " + ans;
 System.out.println("publish: " + msg);
 amqpTemplate.convertAndSend(Pkg.exchange, Pkg.routing, msg);
 return msg;
    }
}

上面的案例中,主要方法在于` amqpTemplate#convertAndSend ',第一个参数为exchangeName,第二个为routingKey

恒定配置如下

java 类Pkg { 最终静态字符串交换= “ topic.e” ; 最后的静态字符串路由= “ r” ; 最后的静态字符串队列= “ topic.a” ; } ```

2.消费消息

消费消息,需要指定队列,通过routingKey绑定绑定交换,如下


   

 
  
      类型= ExchangeTypes 。主题),键= Pkg 。路由))公共无效消费者(字符串msg ){  系统。出来。println (“消费者msg:” + msg ); } } ``

 
    



### 3.测试演示

写一个简单的休息接口,用于接收参数,发布消息到MQ,并被` ConsumerDemo `消费

```java
@RestController
public class PubRest {
    @Autowired
    private PublishDemo publishDemo;

    @GetMapping(path = {"", "/", "/publish"})
    public String publish(String name) {
 return publishDemo.publish2mq(name);
    }
}

![](http://img3.sycdn.imooc.com/5e43de8e0001bcee00020017.jpg)

二。其他 0.项目
  • 工程:[ https://github.com/liuyueyi/spring-boot-demo ](https://github.com/liuyueyi/spring-boot-demohttps://github.com/liuyueyi/spring-boot -演示”)-原始码:[ https://github.com/liuyueyi/spring-boot-demo/tree/master/spring-boot/300-rabbitmq ](https://github.com/liuyueyi/spring- boot -demo / tree / master / spring-boot / 300-rabbitmq” https://github.com/liuyueyi/spring-boot-demo/tree/master/spring-boot/300-rabbitmq ”)
1.一灰灰博客

尽信书则不如,以上内容,纯属一家之言,因个人能力有限,难免有疏漏和错误之处,如发现错误或有更好的建议,欢迎批评指正,不吝感激

下面一灰灰的个人博客,记录所有学习和工作中的博文,欢迎大家前去逛逛

  • 一灰灰Blog个人博客[ https://blog.hhui.top ](https://blog.hhui.tophttps://blog.hhui.top ”)-一灰灰Blog-Spring主题博客[ http ://spring.hhui.top ](http://spring.hhui.tophttp://spring.hhui.top ”)
转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号