SpringBoot接入最新版RocketMq-Spring2.2.0,消费者指定返回消息处理状态
因为用的是RocketMq4.8.0,因此接入最新的rocketmq-spring
首先引入依赖
<dependency>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-spring-boot-starter</artifactId>
<version>2.2.0</version>
</dependency>
RocketMq-Spring提供了默认的rocket生产者,RocketMqTemplate
直接注入就可以直接使用,默认的是读取application.yml/properties文件里的rocketMq默认配置路径
@Autowired
private RocketMqTemplate rocketMqTemplate
默认配置属性如下
rocketmq:
name-server: localhost:9876
producer:
group: audit-group
也可以自定义RocketMqTemplate,这样就可以同时拥有多个不同配置的生产者,自定义生产者非常简单,只需要直接继承RocketMqTemlate就可以了,然后从注解中配置属性:
@ExtRocketMQTemplateConfiguration(group = "audit-test",nameServer = "localhost:9876")
public class MyRocketMqTemplate extends RocketMQTemplate {
}
上面那个注解中可以配置很多属性,可以直接赋值读取,也可以用表达式比如${myrocket.nameserver}从yml/properties配置文件中读取,要用的时候直接注入这个类的对象就可以使用了
@Service
public class Producer {
String topic="Topic-test";
//如