SpringBoot如何使用GTS
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要为大家展示了"SpringBoot如何使用GTS",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"SpringBoot如何使用GTS"这篇文章吧。
千家信息网最后更新 2026年11月02日SpringBoot如何使用GTS
这篇文章主要为大家展示了"SpringBoot如何使用GTS",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"SpringBoot如何使用GTS"这篇文章吧。
1. 依赖类库txc-client.jar, txt-client-spring-cloud-2.0.1.jar
2. 使用TxcDataSource代理源数据源【注意:dbcp2.BasicDataSource不支持,可以使用DruidDataSource】
3. 添加自动配置类文件
package com.bodytrack.restapi; import com.taobao.txc.client.aop.TxcTransactionScaner;import com.taobao.txc.client.boot.TxcSpringBootProperties;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;import org.springframework.boot.context.properties.EnableConfigurationProperties;import org.springframework.context.ApplicationContext;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.context.annotation.DependsOn; @Configuration@EnableConfigurationProperties({TxcSpringBootProperties.class})public class TxcSpringBootAutoConfiguration { @Autowired private TxcSpringBootProperties txcSpringBootProperties; @Autowired private ApplicationContext applicationContext; private static boolean isEmpty(String str) { return str == null || str.length() == 0; } @Bean(name = "txcScanner") @ConditionalOnProperty( prefix = "spring.boot.txc", name = {"txcServerGroup"} ) //定义声明式事务,要想让事务annotation感知的话,要在这里定义一下 public TxcTransactionScaner txcTransactionScaner() { String appName = this.txcSpringBootProperties.getTxcAppName() == null ? this.applicationContext.getEnvironment().getProperty("spring.application.name") : this.txcSpringBootProperties.getTxcAppName(); String txServiceGroup = this.txcSpringBootProperties.getTxcServerGroup(); int mode = this.txcSpringBootProperties.getMode() == 0 ? 1 : this.txcSpringBootProperties.getMode(); TxcTransactionScaner txcTransactionScanner = new TxcTransactionScaner(appName, txServiceGroup, mode, this.txcSpringBootProperties.getUrl()); if (!isEmpty(this.txcSpringBootProperties.getAccessKey())) { txcTransactionScanner.setAccessKey(this.txcSpringBootProperties.getAccessKey()); } if (!isEmpty(this.txcSpringBootProperties.getSecretKey())) { txcTransactionScanner.setSecretKey(this.txcSpringBootProperties.getSecretKey()); } return txcTransactionScanner; }}4. 添加GTS配置
spring: boot: txc: txcAppName: demo txcServerGroup: txc_test_public.1129361738553704.QD #公网测试的专用事务分组 url: https://test-cs-gts.aliyuncs.com #公网测试url accessKey: xxx #非测试时需提供 secretKey: xxxx #非测试时需提供
5. 发送rest请求时,请求添加header(TXC_XID,BEGIN_COUNT,COMMIT_COUNT)
public String callTestTxc() { HttpHeaders requestHeaders = new HttpHeaders(); requestHeaders.set("TXC_XID", String.valueOf(TxcContext.getCurrentXid())); requestHeaders.set("BEGIN_COUNT", String.valueOf(TxcContext.getBeginCount())); requestHeaders.set("COMMIT_COUNT", String.valueOf(TxcContext.getCommitCount())); HttpEntity entity = new HttpEntity<>("parameters", requestHeaders); String restUrl = String.format("%s/api/scoreService/testTxc", "http://10.0.0.5:8762"); ResponseEntity restData = restTemplate.exchange(restUrl, HttpMethod.GET, entity, String.class); return restData.toString(); } 6. 发起全局事务使用注解@TxcTransaction
以上是"SpringBoot如何使用GTS"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
事务
测试
内容
篇文章
公网
学习
帮助
配置
全局
数据
数据源
文件
易懂
更多
条理
注解
知识
编带
行业
资讯
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技园
互联网科技活动banner
圆梦互联网科技
关于新基建和互联网科技
北京互联网科技公司
互联网金融 金融科技
安徽鑫晟辉互联网科技
鑫亿盛互联网科技
深圳齐家互联网科技
互联网科技上市公司
深圳天众互联网科技公司
互联网与医疗科技
互联网科技产业特征
互联网科技扶贫时间
群盈汇互联网科技有限公司
智帮互联网科技公司最近动向
皮皮虾互联网科技有限公司
互联网科技新闻
陕西九四连强互联网科技有限公司
唐山双旺合互联网科技产业园
手磨咖啡
互联网科技行业发展
齐家互联网科技
浩特互联网科技
港股科技和互联网
如何创新互联网科技
晋城互联网科技
智帮互联网科技公司最近动向
互联网与数字科技关系
陕西九四连强互联网科技有限公司