项目作者: L457765899

项目描述 :
transactions-dubbo项目的使用demo
高级语言: Java
项目地址: git://github.com/L457765899/transactions-test.git
创建时间: 2018-09-30T08:48:02Z
项目社区:https://github.com/L457765899/transactions-test

开源协议:

下载


transactions-test

transactions-dubbo项目的使用demo

  1. CREATE TABLE `t1` (
  2. `id` int NOT NULL AUTO_INCREMENT ,
  3. `name` varchar(64) NULL ,
  4. `time` bigint NOT NULL ,
  5. PRIMARY KEY (`id`)
  6. );
  7. CREATE TABLE `t2` (
  8. `id` int NOT NULL AUTO_INCREMENT ,
  9. `name` varchar(64) NULL ,
  10. `time` bigint NOT NULL ,
  11. PRIMARY KEY (`id`)
  12. );

数据库

demo1-a 只有表t1

demo1-b 只有表t2

demo2-a 只有表t1

demo2-b 只有表t2

demo3-a 只有表t1

项目

demo1 多数据源+ActiveMQ

demo2 多数据源

demo3 单数据源

demo4 单数据源+ActiveMQ

demo5 多数据源+RocketMq

demo6 暂时没东西

事物的使用

多数据源项目:只需要在事物发起者和事物参与者的方法上加@Transactional注解

单数据源项目:只需要在事物发起者的方法上加@Transactional@XA注解,事物参与者的方法上加@Transactional注解

注意:单数据源项目的事物发起者比多数据源的事物发起者多了一个@XA注解,原因是单数据源默认使用的是1段提交,
加@XA注解的目的是让单数据源的项目使用2段提交,事物参与者单数据源项目和多数据源项目一样加一个@Transactional注解就够了

测试目的

demo1+demo2 主要测试:多数据源项目和多数据源项目相互调用是否正常

demo1+demo2+demo3 主要测试:多数据源项目和单数据源项目相互调用是否正常

demo4+demo1 主要测试:加入ActiveMQ后相互之间调用是否正常

demo5+demo2 主要测试:加入RocketMq后相互之间调用是否正常