1.maven依賴
<!--activemq的依賴-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-activemq</artifactId>
</dependency>
2.配置activemq的配置文件
server.port=10909
#activemq配置文件
#activeMQ地址
spring.activemq.broker-url=tcp://127.0.0.1:61616
#集羣配置
#spring.activemq.broker-url=failover:(tcp://172.18.1.188:61616,tcp://172.18.1.18:61616)
#activeMQ用戶名,根據實際情況配置
spring.activemq.user=admin
#activeMQ密碼,根據實際情況配置
spring.activemq.password=admin
#是否替換默認的connectionFactory
#spring.activemq.pool.enabled=false
#最大連接數
#spring.activemq.pool.maxConnections=2
#超時時間
#spring.activemq.pool.expiryTimeout=0
#空閒時間
#spring.activemq.pool.idleTimeout=30000
#是否啓用內存模式(也就是不安裝MQ,項目啓動時同時也啓動一個MQ實例)
#spring.activemq.in-memory=false
#信任所有的包
#spring.activemq.packages.trust-all=true
如果直接發送對象消息,那麼必須設置spring.activemq.packages.trust-all爲true;另外如果你想開始消息持久化就必須spring.activemq.in-memory=false選項。
對於發送對象消息,對象必須實現Serializable接口,並且必須在代碼裏指定serialVersionUID的值,否則在消費端序列化的時候報錯。
3.生產者發送消息
/**
* 消息產生者
*/
@RestController
public class PriverController {
@Autowired
private JmsMessagingTemplate jmsMessagingTemplate;
@RequestMapping("/test")
public String test1(String msg){
jmsMessagingTemplate.convertAndSend("queue",msg);
return "消息已經發送";
}
}
4.消息消費者
@Component
public class MessageRecevice {
//使用JmsListener配置消費者監聽的隊列
@JmsListener(destination = "queue")//目的地
public void receiveQueueObj(String txtMsg) {
System.out.println("****************************************接受到消息"+txtMsg);
}
}
5.檢驗成功
1>.啓動Activemq
2>.啓動springboot
3>.訪問http://127.0.0.1:10909/test?msg=3456
監聽獲取到的
以上就是springboot整合activemq(點對點)簡單使用
源碼https://github.com/chengda1992/mxlgslcd.git