From df04d2f5d56cce23aa108c1cce1ce27e4bf52fa0 Mon Sep 17 00:00:00 2001
From: whyclxw <810412026@qq.com>
Date: 星期三, 16 十月 2024 14:50:26 +0800
Subject: [PATCH] 解析数据

---
 src/main/java/com/whyc/service/MybatisSqlExecuteService.java |   67 +++++++++++++++++++++++++++++++++
 1 files changed, 67 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/whyc/service/MybatisSqlExecuteService.java b/src/main/java/com/whyc/service/MybatisSqlExecuteService.java
index 59af9b3..3d90d97 100644
--- a/src/main/java/com/whyc/service/MybatisSqlExecuteService.java
+++ b/src/main/java/com/whyc/service/MybatisSqlExecuteService.java
@@ -13,6 +13,7 @@
 
 import javax.swing.*;
 import java.sql.*;
+import java.util.ArrayList;
 import java.util.List;
 
 @Service
@@ -138,4 +139,70 @@
             throwables.printStackTrace();
         }
     }
+
+    public  boolean makeManualCommit( ArrayList<String> al_sql_strs){
+        PreparedStatement ps = null;
+        SqlSession sqlSession = openSession();
+        Connection mysql_con=sqlSession.getConnection();
+        boolean exe_res = true;
+        try {
+            mysql_con.setAutoCommit(false);
+
+            for(int n=0; n<al_sql_strs.size(); n++) {
+                if(true == exe_res) {
+                    exe_res = executeCreateTableNoclose(mysql_con,al_sql_strs.get(n));
+                } else {
+                    break;
+                }
+            }
+            if(true == exe_res) {
+                mysql_con.commit();
+            }
+        } catch (SQLException e) {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+            exe_res = false;
+        } finally {
+            try {
+                if(false == exe_res) {
+                    mysql_con.rollback();
+                }
+                mysql_con.setAutoCommit(true);
+            } catch (SQLException e1) {
+                // TODO Auto-generated catch block
+                e1.printStackTrace();
+            }finally {
+                closeSession(null,ps,sqlSession);
+            }
+        }
+        return exe_res;
+    }
+
+    //鎵цsql璇彞with no colse
+    public static boolean executeCreateTableNoclose(Connection mysql_con,String sql_str)
+    {
+        PreparedStatement ps=null;
+
+        boolean rest = true;
+        try
+        {
+            ps = mysql_con.prepareStatement(sql_str);
+            ps.setQueryTimeout(600);
+            ps.execute();
+        }
+        catch(SQLException ex)
+        {
+            ex.printStackTrace();
+            rest = false;
+
+        }finally {
+            try {
+                ps.close();
+            } catch (SQLException e) {
+                // TODO Auto-generated catch block
+                e.printStackTrace();
+            }
+        }
+        return rest;
+    }
 }

--
Gitblit v1.9.1