# rocketmq-util
**Repository Path**: xuyandong/rocketmq-util
## Basic Information
- **Project Name**: rocketmq-util
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 0
- **Created**: 2021-01-29
- **Last Updated**: 2022-08-25
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
rocketmq-util:
注解@Rocketmq中messageKey跟tag属性支持SpEL表达式 例:messageKey = "#model1.pl"
messageKey没有声明的情况下启用UUID(不推荐)
1. 只有生产者使用需求的引入
```java
com.ling.rocketmq
rocketmq-producer
${rocketmq-util.version}
```
在启动类上添加注解
```java
@EnableRocketmqProducer(basePackages = {"com.ling.rocket.service"})
```
2. 只有消费者使用需求的引入
```java
com.ling.rocketmq
rocketmq-consumer
${rocketmq-util.version}
```
在启动类上添加注解
```java
@EnableRocketmqConsumer
```
3. 两者需求都有的引入
```java
com.ling.rocketmq
rocketmq-all
${rocketmq-util.version}
```
在启动类上添加注解
```java
@EnableRocketmq(basePackages = {"com.ling.rocket.service"})
```
使用Demo
生产者需定义interface并使用@Rocketmq注解
```java
public interface ExampleRocketmq {
@Rocketmq(topic = "test-topic-a", messageKey = "#str", tag = "test")
void doSomeRocketmqMessage(String str, Model1 model1, Model2 model2);
}
```
消费者需要实现生产者定义的接口
```java
@Service
public class ExampleRocketmqImpl implements ExampleRocketmq {
@Override public void doSomeRocketmqMessage(String str, Model1 model1, Model2 model2) {
log.info("消费消息 str: {}, model1: {}, model2: {}", str, model1, model2);
}
}
```