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安全错误
数据库的锁怎样保障安全
青岛互联网科技公司
西安互联网科技
互联网科技股票
安徽鑫晟辉互联网科技
凡科互联网科技
互联网科技网站
科技伦理 互联网公司
中国最先进互联网科技公司
厦门比较好的科技互联网公司
互联网科技扶贫时间
互联网科技和信息
中国科技创新与世界互联网大会
民营互联网公司国防科技
互联网科技和法律行业
晋城互联网科技
黑科技 体验场景 互联网大会
互联网领先科技活动
唐山双旺合互联网科技产业园
现代互联网科技公司
武汉亿视互联网科技有限公司
互联网金融监管科技数据
青海省互联网新科技
互联网科技公司需要的职位
黑科技闪耀互联网之光
卓翼科技产业互联网合作
浙南科技城互联网大厦招聘
互联网金融运营模式中的金融科技
银川新华互联网科技学校是国营吗
山东蛋芒互联网科技有限公司
宁波允成互联网科技有限公司