在SpringBoot中使用ActiveMQ来进行简单的收发消息。
直接上代码!
一、引入依赖:
<!--activemq--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-activemq</artifactId></dependency>
二、配置连接,连上安装好的本地MQ
#####################activemq#####################spring.activemq.broker-url=tcp://127.0.0.1:61616
三、建个生产者
packagecom.xing.studyboot.message; importjavax.jms.Destination; importorg.springframework.beans.factory.annotation.Autowired; importorg.springframework.jms.core.JmsMessagingTemplate; importorg.springframework.stereotype.Service; /*** 生产者* @author xing* @createTime*/"producer") (publicclassProducer { JmsMessagingTemplatejmsTemplate; /*** 发送消息** @param destination 发送到的队列名* @param message 消息体*/publicvoidsendMessage(Stringdestination, Stringmessage) { System.out.println("给队列【qqq】发送消息:"+message); jmsTemplate.convertAndSend(destination, message); } }
四、建个消费者
packagecom.xing.studyboot.message; importorg.springframework.jms.annotation.JmsListener; importorg.springframework.stereotype.Component; publicclassConsumer{ destination="qqq") //queue名 (publicvoidreceiveQueue(Stringtxt) { System.out.println("监听到【qqq】队列的消息:"+txt); } }
五、搞个服务推送下消息
packagecom.xing.studyboot.rest.controller; importorg.springframework.beans.factory.annotation.Autowired; importorg.springframework.web.bind.annotation.PathVariable; importorg.springframework.web.bind.annotation.RequestMapping; importorg.springframework.web.bind.annotation.RestController; importcom.xing.studyboot.message.Producer; /*** 消息测试服务* @author xing**/"/msg") (publicclassMessageController { privateProducerproducer; "/sendMessage/{msg}") (publicStringtestEndpoint(Stringmsg) { producer.sendMessage("qqq", msg); return"消息【 "+msg+" 】发送成功"; } }
六、访问下列url:
http://127.0.0.1:8888/studySpringBoot/msg/sendMessage/发个消息
查看显示结果:
查看本地MQ的控制台,可以看到消息的处理记录:
总结:
在SpringBoot中简单使用了一下ActiveMQ。
一些集成的配置:
END