TX-LCN分布式事务框架使用
发布时间:2020-12-15 07:14:30 所属栏目:Java 来源:网络整理
导读:官方文档相关: GitHub地址: https://github.com/codingapi/tx-lcn 官方文档: https://www.codingapi.com/docs/txlcn-preface/ 一、运行TX-LCN分布式事务框架 1.下载合适版本(这里我用的是5.0.2) 下载地址: https://github.com/codingapi/tx-lcn/releases/tag
官方文档相关: GitHub地址: 官方文档: 一、运行TX-LCN分布式事务框架1.下载合适版本(这里我用的是5.0.2)下载地址: 2.下载并解压3.导入Idea导入成功后的项目结构,如图所示: 4.配置数据库连接和新建库数据库脚本(项目中存在,以项目中存在的SQL脚本为主) /* Navicat Premium Data Transfer Source Server : local Source Server Type : MySQL Source Server Version : 100309 Source Host : localhost:3306 Source Schema : tx-manager Target Server Type : MySQL Target Server Version : 100309 File Encoding : 65001 Date: 29/12/2018 18:35:59 */ CREATE DATABASE IF NOT EXISTS `tx-manager` DEFAULT CHARSET utf8 COLLATE utf8_general_ci; USE `tx-manager`; SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- -- Table structure for t_tx_exception -- ---------------------------- DROP TABLE IF EXISTS `t_tx_exception`; CREATE TABLE `t_tx_exception` ( `id` bigint(20) NOT NULL AUTO_INCREMENT,`group_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,`unit_id` varchar(321284) NULL DEFAULT NULL,`registrar` tinyint(4) NULL DEFAULT NULL COMMENT '0 待处理 1已处理',`remark` varchar(10240) NULL DEFAULT NULL COMMENT 备注= InnoDB AUTO_INCREMENT = 967 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; SET FOREIGN_KEY_CHECKS = 1; application.properties配置内容如下(一般都有,通常改下库名和用户名、密码即可): spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://127.0.0.1:3306/tx-manager?characterEncoding=UTF-8&useSSL=false spring.datasource.username=root spring.datasource.password=1234 5.运行txlcn-tm项目主要启动主类(TMApplication.java) 效果图,如下: 默认密码是codingapi,支持修改(通常改配置文件即可),主要修改application.properties,添加如下内容,即可实现自定义: tx-lcn.manager.admin-key=tx-lcn-test 登录成功后的效果图如下: 二、微服务中使用分布式事务1.添加Maven依赖<dependency> <groupId>com.codingapi.txlcn</groupId> <artifactId>txlcn-tc</artifactId> <version>5.0.2.RELEASE</version> </dependency> <dependency> <groupId>com.codingapi.txlcn</groupId> <artifactId>txlcn-txmsg-netty</artifactId> <version>2.RELEASE</version> </dependency> 2.application.yml或bootstrap.yml配置如下内容tx-lcn: client: manager-address: 127.0.0.1:8070 logger: enabled: true driver-class-name: com.mysql.cj.jdbc.Driver jdbc-url: jdbc:mysql:127.0.0.1:3306/tx-manager?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&serverTimezone=Asia/Shanghai&useSSL=false username: root password: 1234 3.启动类增加注解@EnableDistributedTransaction 4.对应的Controller中的方法或者Service方法添加对应的注解@LcnTransaction
@Transactional
? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- java – 如何禁用播放2.6 CSRFFilter
- java – 什么是缓存字符串?
- Path.resolve(其他)java.nio.file.Path方法
- Java7 WatchService – 如何检测实际监视目录的重命名/移动
- java – 为什么ConcurrentSkipListSet.contains需要比较器
- Android 判断当前网络服务
- 只需4个步骤,分析解决在生产环境下JVM内存泄露问题
- 把图片转换成圆形的Android代码
- java – 在调试中运行时如何阻止eclipse在每个捕获的异常时
- java – 由事务锁定:@console:Oracle(INTELLIJ CLIENT)