amqp协议java_RabbitMQ入门之spring-boot-starter-amqp<一>

在mac下可以使用brew install rabbitmq安装,其他系统大家可以查一下。由于RabbitMQ是采用Erlang编写的,所以我们是需要安装该语言库的。

0818b9ca8b590ca3270a3433284dd417.png

使用默认用户guest登录,密码也为guest。

0818b9ca8b590ca3270a3433284dd417.png

RabbitMQ是流行的开源消息队列系统,用erlang语言开发。RabbitMQ是AMQP(高级消息队列协议)的标准实现。

在pom.xml中加入spring-boot-starter-amqp,用于支持rabbitmq

0818b9ca8b590ca3270a3433284dd417.png

在application.properties中配置关于RabbitMQ的连接和用户信息

0818b9ca8b590ca3270a3433284dd417.png

实现发送消息的方法,AmqpTemplate接口定义了一套针对AMQP协议的基础操作

0818b9ca8b590ca3270a3433284dd417.png

接受消息的方法类,并用@RabbitHandler注解来指定对消息的处理方法。

0818b9ca8b590ca3270a3433284dd417.png

我把接受消息的代码注释了,然后发送了两条消息,在这个页面可以看到

0818b9ca8b590ca3270a3433284dd417.png

然后把消息接受的打开

0818b9ca8b590ca3270a3433284dd417.png

附:今天启动sts发现报了一个异常(据说eclipse也会,但是我的版本没有报异常)

然后在/.metadata/.log中看启动报错的日志

Caused by: java.lang.NoClassDefFoundError: javax/annotation/PostConstruct

at org.eclipse.e4.core.internal.di.InjectorImpl.inject(InjectorImpl.java:151)

at org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:375)

... 22 more

Caused by: java.lang.ClassNotFoundException: javax.annotation.PostConstruct cannot be found by org.eclipse.e4.core.di_1.6.1.v20160712-0927

at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:410)

at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:372)

at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:364)

at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:161)

at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496)

... 24 more

网上说这是升级到了java9报的异常

查询得知   sts.ini或eclipse.ini修改这个配置文件 在里面加上 --add-modules=ALL-SYSTEM

然后启动没有问题了!

微信公众号:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值