This is an automated email from the ASF dual-hosted git repository.

duanzhengqiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 2d92f46dc28 Remove `TransactionTypeHolder` document(#25674) (#25707)
2d92f46dc28 is described below

commit 2d92f46dc2824c11111a1769402dbe9f3967b6e7
Author: ZhangCheng <[email protected]>
AuthorDate: Wed May 17 08:38:43 2023 +0800

    Remove `TransactionTypeHolder` document(#25674) (#25707)
---
 .../special-api/transaction/java-api.cn.md         | 24 ++++++++++------------
 .../special-api/transaction/java-api.en.md         | 24 ++++++++++------------
 .../jdbc/java/repository/jdbc/OrderRepository.ftl  | 14 +------------
 3 files changed, 23 insertions(+), 39 deletions(-)

diff --git 
a/docs/document/content/user-manual/shardingsphere-jdbc/special-api/transaction/java-api.cn.md
 
b/docs/document/content/user-manual/shardingsphere-jdbc/special-api/transaction/java-api.cn.md
index e818b6b590e..0d2ac093d27 100644
--- 
a/docs/document/content/user-manual/shardingsphere-jdbc/special-api/transaction/java-api.cn.md
+++ 
b/docs/document/content/user-manual/shardingsphere-jdbc/special-api/transaction/java-api.cn.md
@@ -25,7 +25,7 @@ weight = 1
     <version>${shardingsphere.version}</version>
 </dependency>
 
-<!-- 使用 XA 的 Narayana模式时,需要引入此模块 -->
+<!-- 使用 XA 的 Narayana 模式时,需要引入此模块 -->
 <dependency>
     <groupId>org.apache.shardingsphere</groupId>
     <artifactId>shardingsphere-transaction-xa-narayana</artifactId>
@@ -40,22 +40,20 @@ weight = 1
 </dependency>
 ```
 
-
 ## 操作步骤
 
-1. 设置事务类型
-2. 执行业务逻辑
+使用事务执行业务逻辑
 
 ## 配置示例
 
 ```java
-TransactionTypeHolder.set(TransactionType.XA); // 支持 TransactionType.LOCAL, 
TransactionType.XA, TransactionType.BASE
-        try (Connection conn = dataSource.getConnection()) { // 使用 
ShardingSphereDataSource
-        conn.setAutoCommit(false);
-        PreparedStatement ps = conn.prepareStatement("INSERT INTO t_order 
(user_id, status) VALUES (?, ?)");
-        ps.setObject(1, 1000);
-        ps.setObject(2, "init");
-        ps.executeUpdate();
-        conn.commit();
-        }
+// 使用 ShardingSphereDataSource 获取连接,执行事务操作
+try (Connection connection = dataSource.getConnection()) {
+    connection.setAutoCommit(false);
+    PreparedStatement preparedStatement = connection.prepareStatement("INSERT 
INTO t_order (user_id, status) VALUES (?, ?)");
+    preparedStatement.setObject(1, 1000);
+    preparedStatement.setObject(2, "init");
+    preparedStatement.executeUpdate();
+    connection.commit();
+}
 ```
diff --git 
a/docs/document/content/user-manual/shardingsphere-jdbc/special-api/transaction/java-api.en.md
 
b/docs/document/content/user-manual/shardingsphere-jdbc/special-api/transaction/java-api.en.md
index d1ea538575c..d44c61ec990 100644
--- 
a/docs/document/content/user-manual/shardingsphere-jdbc/special-api/transaction/java-api.en.md
+++ 
b/docs/document/content/user-manual/shardingsphere-jdbc/special-api/transaction/java-api.en.md
@@ -25,7 +25,7 @@ Introducing Maven dependency
     <version>${shardingsphere.version}</version>
 </dependency>
 
-<!-- This module is required when using XA's Narayana mode -->
+<!-- This module is required when using the Narayana mode with XA transactions 
-->
 <dependency>
     <groupId>org.apache.shardingsphere</groupId>
     <artifactId>shardingsphere-transaction-xa-narayana</artifactId>
@@ -40,22 +40,20 @@ Introducing Maven dependency
 </dependency>
 ```
 
-
 ## Procedure
 
-1. Set the transaction type
-2. Perform the business logic
+Perform the business logic using transactions
 
 ## Sample
 
 ```java
-TransactionTypeHolder.set(TransactionType.XA); // support 
TransactionType.LOCAL, TransactionType.XA, TransactionType.BASE
-        try (Connection conn = dataSource.getConnection()) { // use 
ShardingSphereDataSource
-        conn.setAutoCommit(false);
-        PreparedStatement ps = conn.prepareStatement("INSERT INTO t_order 
(user_id, status) VALUES (?, ?)");
-        ps.setObject(1, 1000);
-        ps.setObject(2, "init");
-        ps.executeUpdate();
-        conn.commit();
-        }
+// Use ShardingSphereDataSource to get a connection and perform transaction 
operations.
+try (Connection connection = dataSource.getConnection()) {
+    connection.setAutoCommit(false);
+    PreparedStatement preparedStatement = connection.prepareStatement("INSERT 
INTO t_order (user_id, status) VALUES (?, ?)");
+    preparedStatement.setObject(1, 1000);
+    preparedStatement.setObject(2, "init");
+    preparedStatement.executeUpdate();
+    connection.commit();
+}
 ```
diff --git 
a/examples/shardingsphere-example-generator/src/main/resources/template/jdbc/java/repository/jdbc/OrderRepository.ftl
 
b/examples/shardingsphere-example-generator/src/main/resources/template/jdbc/java/repository/jdbc/OrderRepository.ftl
index b82a00831b7..fc74a5248d9 100644
--- 
a/examples/shardingsphere-example-generator/src/main/resources/template/jdbc/java/repository/jdbc/OrderRepository.ftl
+++ 
b/examples/shardingsphere-example-generator/src/main/resources/template/jdbc/java/repository/jdbc/OrderRepository.ftl
@@ -19,10 +19,6 @@
 package org.apache.shardingsphere.example.${package}.${framework?replace('-', 
'.')}.repository;
 
 import org.apache.shardingsphere.example.${package}.${framework?replace('-', 
'.')}.entity.Order;
-<#if transaction!="local">
-import org.apache.shardingsphere.transaction.api.TransactionType;
-import org.apache.shardingsphere.transaction.core.TransactionTypeHolder;
-</#if>
 
 import javax.sql.DataSource;
 import java.sql.Connection;
@@ -109,13 +105,8 @@ public final class OrderRepository {
     
     public Long insert(final Order order) throws SQLException {
         String sql = "INSERT INTO t_order (user_id, order_type, address_id, 
status) VALUES (?, ?, ?, ?)";
-    <#if transaction?contains("xa")>
-        TransactionTypeHolder.set(TransactionType.XA);
-    <#elseif transaction?contains("base")>
-        TransactionTypeHolder.set(TransactionType.BASE);
-    </#if>
         try (Connection connection = dataSource.getConnection();
-             PreparedStatement preparedStatement = 
connection.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS)) {
+            PreparedStatement preparedStatement = 
connection.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS)) {
         <#if transaction!="local">
             connection.setAutoCommit(false);
         </#if>
@@ -132,10 +123,7 @@ public final class OrderRepository {
         <#if transaction!="local">
             connection.commit();
         </#if>
-        }<#if transaction!="local"> finally {
-            TransactionTypeHolder.clear();
         }
-        </#if>
         return order.getOrderId();
     }
     

Reply via email to