Skip to content

Commit e3456f3

Browse files
committed
feat: 发送事务消息示例接口修改为可指定 connectionName
1 parent 6ea5f05 commit e3456f3

1 file changed

Lines changed: 20 additions & 8 deletions

File tree

example/example_svc/src/main/java/com/github/cadecode/uniboot/example/svc/controller/MqExampleController.java

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.github.cadecode.uniboot.example.svc.controller;
22

3+
import cn.hutool.core.util.ObjUtil;
34
import com.github.cadecode.uniboot.common.plugin.mq.model.TxMsg;
45
import com.github.cadecode.uniboot.common.plugin.mq.util.RabbitUtil;
56
import com.github.cadecode.uniboot.common.plugin.mq.util.TxMsgKit;
@@ -9,6 +10,7 @@
910
import io.swagger.annotations.ApiOperation;
1011
import lombok.RequiredArgsConstructor;
1112
import lombok.extern.slf4j.Slf4j;
13+
import org.springframework.amqp.rabbit.connection.SimpleResourceHolder;
1214
import org.springframework.transaction.annotation.Transactional;
1315
import org.springframework.web.bind.annotation.GetMapping;
1416
import org.springframework.web.bind.annotation.RequestMapping;
@@ -56,14 +58,24 @@ public boolean sendObj(@RequestParam String exchange, @RequestParam String routi
5658
@Transactional(rollbackFor = Exception.class)
5759
@ApiOperation("发送事务消息")
5860
@GetMapping("send_tx")
59-
public boolean sendTx(@RequestParam String exchange, @RequestParam String routingKey) {
60-
txMsgKit.sendTx(TxMsg.builder()
61-
.bizType("Test biz")
62-
.bizKey("TestBiz001")
63-
.exchange(exchange)
64-
.routingKey(routingKey)
65-
.message("Test TxMsg")
66-
.build());
61+
public boolean sendTx(@RequestParam String exchange, @RequestParam String routingKey,
62+
@RequestParam(required = false) String connectionName) {
63+
try {
64+
if (ObjUtil.isNotNull(connectionName)) {
65+
SimpleResourceHolder.bind(RabbitUtil.template().getConnectionFactory(), connectionName);
66+
}
67+
txMsgKit.sendTx(TxMsg.builder()
68+
.bizType("Test biz")
69+
.bizKey("TestBiz001")
70+
.exchange(exchange)
71+
.routingKey(routingKey)
72+
.message("Test TxMsg")
73+
.build());
74+
} finally {
75+
if (ObjUtil.isNotNull(connectionName)) {
76+
SimpleResourceHolder.unbindIfPossible(RabbitUtil.template().getConnectionFactory());
77+
}
78+
}
6779
return true;
6880
}
6981
}

0 commit comments

Comments
 (0)