1、Maven坐标的依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
2、yml的配置
server:
port: 8081
spring:
application:
name: test-rabbitmq-producer
rabbitmq:
host: 127.0.0.1
port: 5672
username: guest
password: guest
publisher-confirm-type:CORRELATEN #发布确认模式,消息是否会被成功发送 到交换机
publisher-returns:true
listener:
simple:
prefetch:
concurrency:
ackonledge-mode:manual #消费端的手动确认
消息发送的封装方法:
@Autowired
RabbitTemplate rabbitTemplate;
public boolean sendMsg(String exchange,String routeringKey,Object message){
rabbitTemplate.convertAndSend(exchange,routingkey,message)
return true;
}
信息的接收:
@RabbitListener(bindings = @QueueBBindings(value = @Queue(value = "",durable = ""),
exchange = @Exchange(value = ),
key = {}
))
void recvMsg(Message msg,Channel channel){
//如果在配置中配置了mq接收消息的手动确认,此时你需要进行手动确认,basicAck第二个参数表示
//的是是否接收多个消息true是表示接收多个,false表示不接收多个
channel.basicAck(msg.getMessageProperties().getDeliveryTag(),false);
}