## 開啟分布式事務
1. 由于JPower底層已經集成了seata,所以對于應用服務來說只需要控制是否開啟分布式事務即可,具體配置如下:
~~~
jpower:
seata:
enabled: true
~~~
2. 分布式事務默認是不開啟的,所以需要配置開啟才可使用。
## 如何使用
* 微服務中我們需要maven集成common-transaction

* 在配置文件中需要配置seata服務地址,配置方式如下:
~~~
jpower:
# 是否啟用分布式事務(默認不開啟)
dev:
seata:
grouplist: localhost:8888
~~~
* 在數據庫中需要加入`undo_log`表,表結構如下:
```
CREATE TABLE `undo_log` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`branch_id` bigint(20) NOT NULL,
`xid` varchar(100) NOT NULL,
`context` varchar(128) NOT NULL,
`rollback_info` longblob NOT NULL,
`log_status` int(11) NOT NULL,
`log_created` datetime NOT NULL,
`log_modified` datetime NOT NULL,
`ext` varchar(100) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `ux_undo_log` (`xid`,`branch_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
```
* 開啟分布式事務后,在接口的第一層請求方法加上對應的的注解

* 保持seata服務開啟狀態,啟動我們開啟分布式事務的服務,這時我們的服務就已經具備了分布式事務的功能。
## 對接nacos配置
* JPower已經寫好了對接nacos的配置,我們只需要在`com.wlcb.jpower.module.common.seata.deploy.SeataDeployServiceImpl`類中把注釋的內容放開即可。

* 放開這個配置后,我們就可以直接在nacos的配置中心進行seata的配置
* 關于nacos的安裝可以參考[Nacos安裝](../Nacos安裝.md)
- 序言
- 開發環境準備
- 環境要求
- 環境安裝
- 基礎環境安裝
- Nacos安裝
- Sentinel安裝
- 插件安裝
- 導入工程
- 運行工程
- 工程測試
- JPower特性
- 系統啟動器
- 多終端令牌認證
- 系統鑒權
- 鑒權API
- 鑒權配置
- API權限配置
- 接口放行配置
- 數據權限
- redis緩存
- 動態網關
- 聚合文檔
- SaaS多租戶
- 概念
- 使用
- Xss防注入
- 日志記錄
- 操作日志&錯誤日志
- SQL打印
- feign請求日志&配置
- gateway日志
- 服務日志打印
- 導入導出
- 字典查詢
- 系統文件上傳下載
- 接口監控
- 代碼生成器
- 配置文件共享
- Mybatis過濾器
- 配置說明
- 高級實戰
- nacos動態配置
- Seata分布式事務
- 簡介
- docker啟動
- 微服務配置
- 微服務遠程調用
- 聲明式服務調用 Feign
- 熔斷機制 Sentinel
- sentinel流控
- 簡介
- 微服務配置
- 配置nacos對接
- APM監控&鏈路追蹤
- 簡介
- 安裝
- 微服務接入
- SpringBootAdmin監控
- ELK分布式日志追蹤系統
- ELK簡介
- ELK一鍵部署
- 微服務日志對接ELK
- JPower-Chat
- 配置說明
- 生產部署
- docker部署
- docker安裝
- docker-compose安裝
- harbor安裝
- 部署步驟
- 版本升級
- 1.0.1升級到2.0.0
- 2.0.0升級到2.0.2
- 2.0.2升級2.1.0
- 2.1.0升級到2.1.1
- 2.1.1升級到2.1.2
- 2.1.2升級到2.1.4