From bd80bef8c6ea2763993ff3ef065ee474b11222a4 Mon Sep 17 00:00:00 2001
From: 18516761980 <56479841@qq.com>
Date: 星期二, 02 八月 2022 09:17:49 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/common/service/erp/ErpSqlServer.java | 121 +++++++++++++++++++++++++++++++--------
1 files changed, 95 insertions(+), 26 deletions(-)
diff --git a/src/main/java/com/zy/common/service/erp/ErpSqlServer.java b/src/main/java/com/zy/common/service/erp/ErpSqlServer.java
index 2ebe41f..481444b 100644
--- a/src/main/java/com/zy/common/service/erp/ErpSqlServer.java
+++ b/src/main/java/com/zy/common/service/erp/ErpSqlServer.java
@@ -2,6 +2,7 @@
import com.core.common.Cools;
import com.zy.common.properties.ErpDbProperties;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -19,11 +20,12 @@
* 绠�鍗曟寔涔呭眰妗嗘灦
* Created by vincent on 2020/11/26
*/
+@Slf4j
@Service
public class ErpSqlServer {
// 鏁版嵁搴撹繛鎺�
- private Connection conn;
+// private Connection conn;
// 鍒涘缓棰勭紪璇戣鍙ュ璞★紝涓�鑸兘鏄敤杩欎釜鑰屼笉鐢⊿tatement
private PreparedStatement pstm = null;
// 鍒涘缓涓�涓粨鏋滈泦瀵硅薄
@@ -66,31 +68,86 @@
/*****************************************************************************/
- private synchronized List<Map<String, Object>> executeQuery(String sql) {
+ private List<Map<String, Object>> executeQuery(String sql) {
+ Connection conn = null;
try {
- Connection conn = getConn();
+ conn = getConn();
pstm = conn.prepareStatement(sql);
rs = pstm.executeQuery();
- List<Map<String, Object>> maps = convertList(rs);
- return deepClone(maps);
+// List<Map<String, Object>> maps = convertList(rs);
+ return convertList(rs);
} catch (Exception e) {
e.printStackTrace();
return null;
} finally {
release();
+ if (conn != null) {
+ try {
+ conn.close();
+ conn = null;
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
}
}
- private int executeUpdate(String sql) {
+
+ public Number executeQueryCount(String sql, String column) {
+ Number value = 0;
+ Connection conn = null;
try {
- Connection conn = getConn();
+ conn = getConn();
pstm = conn.prepareStatement(sql);
- return pstm.executeUpdate();
+ rs = pstm.executeQuery();
+// ResultSetMetaData metaData = rs.getMetaData();
+ while (rs.next()) {
+ value = (Number) rs.getInt(column);
+ }
+ return value;
} catch (Exception e) {
e.printStackTrace();
return 0;
} finally {
release();
+ if (conn != null) {
+ try {
+ conn.close();
+ conn = null;
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+
+ private int executeUpdate(String sql) {
+ Connection conn = null;
+ try {
+ conn = getConn();
+ if(null != conn)
+ {
+ pstm = conn.prepareStatement(sql);
+ } else {
+ log.error("鏇存柊ERP涓棿琛ㄥけ璐�===>>鏁版嵁搴撹繛鎺onn涓虹┖");
+ log.error("鏇存柊ERP涓棿琛ㄥけ璐�===>>" + sql);
+ }
+ return pstm.executeUpdate();
+ } catch (Exception e) {
+ e.printStackTrace();
+ log.error("鏇存柊ERP涓棿琛ㄥけ璐�===>>" + sql);
+ log.error("鏇存柊ERP涓棿琛ㄥけ璐�===>>" + e);
+ return 0;
+ } finally {
+ release();
+ if (conn != null) {
+ try {
+ conn.close();
+ conn = null;
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
}
}
@@ -108,17 +165,29 @@
return list;
}
- private Connection getConn() {
- if (null == this.conn) {
- try {
- Class.forName(erpDbProperties.getDriver_class_name()).newInstance();
- this.conn = DriverManager.getConnection(erpDbProperties.getUr(), erpDbProperties.getUsername(), erpDbProperties.getPassword());
- } catch (Exception e) {
- e.printStackTrace();
- throw new RuntimeException("鑾峰彇ERP鏁版嵁搴撹繛鎺ュけ璐�");
- }
+ //synchronized
+ public Connection getConn() throws SQLException {
+ Connection conn = null;
+ try {
+ Class.forName(erpDbProperties.getDriver_class_name()).newInstance();
+ conn = DriverManager.getConnection(erpDbProperties.getUr(), erpDbProperties.getUsername(), erpDbProperties.getPassword());
+ } catch (Exception e) {
+ log.error("鑾峰彇ERP鏁版嵁搴撹繛鎺ュけ璐�");
+ e.printStackTrace();
+ throw new RuntimeException("鑾峰彇ERP鏁版嵁搴撹繛鎺ュけ璐�");
}
- return this.conn;
+ return conn;
+// if (null == this.conn || this.conn.isClosed()) {
+// try {
+// Class.forName(erpDbProperties.getDriver_class_name()).newInstance();
+// this.conn = DriverManager.getConnection(erpDbProperties.getUr(), erpDbProperties.getUsername(), erpDbProperties.getPassword());
+// } catch (Exception e) {
+// log.error("鑾峰彇ERP鏁版嵁搴撹繛鎺ュけ璐�");
+// e.printStackTrace();
+// throw new RuntimeException("鑾峰彇ERP鏁版嵁搴撹繛鎺ュけ璐�");
+// }
+// }
+// return this.conn;
}
private void release() {
@@ -136,14 +205,14 @@
e.printStackTrace();
}
}
- if (conn != null) {
- try {
- conn.close();
- conn = null;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
+// if (conn != null) {
+// try {
+// conn.close();
+// conn = null;
+// } catch (SQLException e) {
+// e.printStackTrace();
+// }
+// }
}
/**
--
Gitblit v1.9.1