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