版权声明: https://blog.csdn.net/qxconverse/article/details/80636700
最近参考了别人的博客,简单地学习了在SpringBoot中使用RabbitMQ。
关于消息队列(RabbitMQ)的内容之前总结过,这里不再复述。
要使用RabbitMQ首先需要安装erlang和RabbitMQ。这些在最后的参考博客中都有,也不再叙述。这里仅仅说下自己遇到的问题。我采用的是erlang8.1版本,RabbitMQ 3.6.5版本,在RabbitMQ的控制台启动web管理的时候始终不成功,提示Applying plugin configuration to rabbitmq@(计算机名) failed
错误。检查RabbitMQ服务发现每次手动启动之后就停止了。后来把主机名改短后,重启电脑,并重新安装RabbitMQ就可以了。
这样就能打开http://localhost:15672/#/
网页,即管理界面。
后面新建一个maven项目,命名为SpringBootRabbitMQ
,在application.properties
中配置如下,添加一个用户qinxue
,区别于guest
。
spring.application.name=SpringBootRabbitMQ
spring.rabbitmq.host=localhost
spring.rabbitmq.port=5672
spring.rabbitmq.username=qinxue
spring.rabbitmq.password=123456
需要注意的是,这里新添加的用户要能够access virtual hosts
,后面按照代码编写,并运行就没有什么问题了。
启动应用主类,从控制台中,可以看到如下内容,程序创建了一个访问127.0.0.1:5672
中qinxue
的连接。
o.s.a.r.c.CachingConnectionFactory : Created new connection: SimpleConnection@31a86e2e [delegate=amqp://qinxue@127.0.0.1:5672/]
可以在管理网页中看到如下界面:
运行单元测试类,可以看到控制台中输出下面的内容,消息被发送到了RabbitMQ Server
的hello
队列中。