Browse Source

嵌套声明式事务支持 TxFun 机制

James 3 years ago
parent
commit
79671c3f11
1 changed files with 7 additions and 1 deletions
  1. 7 1
      src/main/java/com/jfinal/plugin/activerecord/tx/Tx.java

+ 7 - 1
src/main/java/com/jfinal/plugin/activerecord/tx/Tx.java

@@ -74,7 +74,13 @@ public class Tx implements Interceptor {
 			try {
 				if (conn.getTransactionIsolation() < getTransactionLevel(config))
 					conn.setTransactionIsolation(getTransactionLevel(config));
-				inv.invoke();
+				
+				if (txFun == null) {
+				    inv.invoke();
+				} else {
+				    txFun.call(inv, conn);
+				}
+				
 				return ;
 			} catch (SQLException e) {
 				throw new ActiveRecordException(e);