From d6f4e1c1c8de8a370c224ea4857aef5f35f4b98a Mon Sep 17 00:00:00 2001
From: 许鹏程 <1821349743@qq.com>
Date: 星期二, 28 五月 2024 16:09:02 +0800
Subject: [PATCH] commit

---
 src/main/java/com/product/datasource/dao/ConnectionInterface.java |   10 
 src/main/java/com/product/datasource/dao/impl/MysqlDaoImpl.java   | 1110 +++++++++++++++++++++++++++++-----------------------------
 2 files changed, 569 insertions(+), 551 deletions(-)

diff --git a/src/main/java/com/product/datasource/dao/ConnectionInterface.java b/src/main/java/com/product/datasource/dao/ConnectionInterface.java
new file mode 100644
index 0000000..badeb7b
--- /dev/null
+++ b/src/main/java/com/product/datasource/dao/ConnectionInterface.java
@@ -0,0 +1,10 @@
+package com.product.datasource.dao;
+
+import java.sql.Connection;
+import java.sql.SQLException;
+
+public interface ConnectionInterface {
+
+    Connection getConnection() throws SQLException;
+
+}
diff --git a/src/main/java/com/product/datasource/dao/impl/MysqlDaoImpl.java b/src/main/java/com/product/datasource/dao/impl/MysqlDaoImpl.java
index fead93d..b025479 100644
--- a/src/main/java/com/product/datasource/dao/impl/MysqlDaoImpl.java
+++ b/src/main/java/com/product/datasource/dao/impl/MysqlDaoImpl.java
@@ -11,6 +11,7 @@
 import com.product.datasource.config.DataBaseType;
 import com.product.datasource.config.ErrorCode;
 import com.product.datasource.connection.ConnectionManager;
+import com.product.datasource.dao.ConnectionInterface;
 import com.product.datasource.dao.Dao;
 import com.product.datasource.entity.BatchResultEntity;
 import com.product.datasource.entity.DataBaseEntity;
@@ -18,6 +19,7 @@
 import com.product.datasource.utils.BatchUtil;
 import org.apache.commons.lang3.StringUtils;
 
+import javax.swing.*;
 import java.sql.Connection;
 import java.sql.PreparedStatement;
 import java.sql.ResultSet;
@@ -30,599 +32,605 @@
  */
 public class MysqlDaoImpl implements Dao {
 
-    private DataBaseEntity dataBaseEntity;
 
-    private Connection connection;
+	private Connection connection;
 
-    private boolean outLog;
+	private boolean outLog;
 
-    public MysqlDaoImpl(DataBaseEntity dataBaseEntity) {
-        if (!DataBaseType.MYSQL.equals(dataBaseEntity.getDataBaseType())) {
-            throw new BaseException(ErrorCode.INIT_DAO_IMPL_TYPE_ERROR);
-        }
-        this.dataBaseEntity = dataBaseEntity;
-        this.outLog = "dev".equals(Global.getSystemConfig("spring.profiles.active", "prod"));
-    }
+	private ConnectionInterface connectionInterface;
 
-    private void info(String message) {
-        if (this.outLog) {
-            SpringMVCContextHolder.getSystemLogger().info(message);
-        }
-    }
+	public MysqlDaoImpl(DataBaseEntity dataBaseEntity) {
+		if (!DataBaseType.MYSQL.equals(dataBaseEntity.getDataBaseType())) {
+			throw new BaseException(ErrorCode.INIT_DAO_IMPL_TYPE_ERROR);
+		}
+		this.outLog = "dev".equals(Global.getSystemConfig("spring.profiles.active", "prod"));
+		connectionInterface = () -> ConnectionManager.getConnection(dataBaseEntity);
+	}
+
+	public MysqlDaoImpl(ConnectionInterface connectionInterface) {
+		this.connectionInterface = connectionInterface;
+	}
+
+	private void info(String message) {
+		if (this.outLog) {
+			SpringMVCContextHolder.getSystemLogger().info(message);
+		}
+	}
 
 
-    /**
-     * 鑾峰彇鏁版嵁搴撶被鍨�
-     *
-     * @return
-     * @throws BaseException
-     */
-    @Override
-    public DataBaseType getDataBaseType() throws com.product.core.exception.BaseException {
-        return DataBaseType.MYSQL;
-    }
+	/**
+	 * 鑾峰彇鏁版嵁搴撶被鍨�
+	 *
+	 * @return
+	 * @throws BaseException
+	 */
+	@Override
+	public DataBaseType getDataBaseType() throws com.product.core.exception.BaseException {
+		return DataBaseType.MYSQL;
+	}
 
-    public Connection getConnection() throws com.product.core.exception.BaseException {
-        try {
-            if (this.connection == null || this.connection.isClosed()) {
-                //鍒濆鍖栬繛鎺�
-                this.connection = ConnectionManager.getConnection(dataBaseEntity);
-            }
-            return this.connection;
-        } catch (Exception e) {
-            e.printStackTrace();
-            throw new BaseException(ErrorCode.GET_CONNECTION_FAIL, e);
-        }
-    }
+	public Connection getConnection() throws com.product.core.exception.BaseException {
+		try {
+			if (this.connection == null || this.connection.isClosed()) {
+				//鍒濆鍖栬繛鎺�
+				this.connection = this.connectionInterface.getConnection();
+			}
+			return this.connection;
+		} catch (Exception e) {
+			e.printStackTrace();
+			throw new BaseException(ErrorCode.GET_CONNECTION_FAIL, e);
+		}
+	}
 
-    /**
-     * 鏂板鍗曟潯璁板綍
-     *
-     * @param fse
-     * @throws OracleDaoImpl.BaseException
-     */
-    @Override
-    public void add(FieldSetEntity fse) throws com.product.core.exception.BaseException {
-        StringBuilder insertSql = BatchUtil.getInsertSql(fse.getMeta());
-        try (PreparedStatement pst = getConnection().prepareStatement(insertSql.toString())) {
-            Object[] fields = fse.getFields();
-            for (int i = 0; i < fields.length; i++) {
-                pst.setObject(i + 1, fse.getObject((String) fields[i]));
-            }
-            pst.execute();
-        } catch (Exception e) {
-            e.printStackTrace();
-            throw new BaseException(ErrorCode.ADD_RECORD_FAIL, e);
-        }
-    }
+	/**
+	 * 鏂板鍗曟潯璁板綍
+	 *
+	 * @param fse
+	 * @throws OracleDaoImpl.BaseException
+	 */
+	@Override
+	public void add(FieldSetEntity fse) throws com.product.core.exception.BaseException {
+		StringBuilder insertSql = BatchUtil.getInsertSql(fse.getMeta());
+		try (PreparedStatement pst = getConnection().prepareStatement(insertSql.toString())) {
+			Object[] fields = fse.getFields();
+			for (int i = 0; i < fields.length; i++) {
+				pst.setObject(i + 1, fse.getObject((String) fields[i]));
+			}
+			pst.execute();
+		} catch (Exception e) {
+			e.printStackTrace();
+			throw new BaseException(ErrorCode.ADD_RECORD_FAIL, e);
+		}
+	}
 
-    /**
-     * 鏌ヨ鍒楄〃鏁版嵁
-     *
-     * @param sql
-     * @return
-     */
-    @Override
-    public DataTableEntity getList(String sql) throws com.product.core.exception.BaseException {
-        return this.getList(sql, new Object[]{});
-    }
+	/**
+	 * 鏌ヨ鍒楄〃鏁版嵁
+	 *
+	 * @param sql
+	 * @return
+	 */
+	@Override
+	public DataTableEntity getList(String sql) throws com.product.core.exception.BaseException {
+		return this.getList(sql, new Object[]{});
+	}
 
-    /**
-     * 鏌ヨ鍒楄〃鏁版嵁
-     *
-     * @param sql    sql
-     * @param params 鍙傛暟
-     * @return
-     */
-    @Override
-    public DataTableEntity getList(String sql, Object[] params) throws com.product.core.exception.BaseException {
-        try (PreparedStatement pst = getConnection().prepareStatement(sql)) {
-            info("鎵цSQL锛歕n" + sql);
-            if (params != null && params.length > 0) {
-                for (int i = 0; i < params.length; i++) {
-                    info("param" + (i + 1) + ": " + params[i]);
-                    pst.setObject(i + 1, params[i]);
-                }
-            }
-            ResultSet resultSet = pst.executeQuery();
-            return loaddingDataList(resultSet);
-        } catch (Exception e) {
-            SpringMVCContextHolder.getSystemLogger().error("EXECUTE_ERROR_SQL:\n" + sql);
-            throw new BaseException(ErrorCode.GET_LIST_FAIL, e);
-        }
-    }
+	/**
+	 * 鏌ヨ鍒楄〃鏁版嵁
+	 *
+	 * @param sql    sql
+	 * @param params 鍙傛暟
+	 * @return
+	 */
+	@Override
+	public DataTableEntity getList(String sql, Object[] params) throws com.product.core.exception.BaseException {
+		try (PreparedStatement pst = getConnection().prepareStatement(sql)) {
+			info("鎵цSQL锛歕n" + sql);
+			if (params != null && params.length > 0) {
+				for (int i = 0; i < params.length; i++) {
+					info("param" + (i + 1) + ": " + params[i]);
+					pst.setObject(i + 1, params[i]);
+				}
+			}
+			ResultSet resultSet = pst.executeQuery();
+			return loaddingDataList(resultSet);
+		} catch (Exception e) {
+			SpringMVCContextHolder.getSystemLogger().error("EXECUTE_ERROR_SQL:\n" + sql);
+			throw new BaseException(ErrorCode.GET_LIST_FAIL, e);
+		}
+	}
 
-    /**
-     * 鏌ヨ鍒楄〃鏁版嵁
-     *
-     * @param tableName
-     * @param filter
-     * @return
-     */
-    @Override
-    public DataTableEntity getList(String tableName, String filter) throws com.product.core.exception.BaseException {
-        return getList(tableName, filter, new Object[]{});
-    }
+	/**
+	 * 鏌ヨ鍒楄〃鏁版嵁
+	 *
+	 * @param tableName
+	 * @param filter
+	 * @return
+	 */
+	@Override
+	public DataTableEntity getList(String tableName, String filter) throws com.product.core.exception.BaseException {
+		return getList(tableName, filter, new Object[]{});
+	}
 
-    /**
-     * 鏌ヨ鍒楄〃鏁版嵁
-     *
-     * @param tableName 琛ㄥ悕
-     * @param filter    鏉′欢
-     * @param params    鍙傛暟
-     * @return
-     */
-    @Override
-    public DataTableEntity getList(String tableName, String filter, Object[] params) throws com.product.core.exception.BaseException {
-        return this.getList(tableName, filter, null, params);
-    }
+	/**
+	 * 鏌ヨ鍒楄〃鏁版嵁
+	 *
+	 * @param tableName 琛ㄥ悕
+	 * @param filter    鏉′欢
+	 * @param params    鍙傛暟
+	 * @return
+	 */
+	@Override
+	public DataTableEntity getList(String tableName, String filter, Object[] params) throws com.product.core.exception.BaseException {
+		return this.getList(tableName, filter, null, params);
+	}
 
-    /**
-     * 鏌ヨ鍒楄〃鏁版嵁
-     *
-     * @param tableName 琛ㄥ悕
-     * @param filter    鏉′欢
-     * @param fields
-     * @param params    鍙傛暟
-     * @return
-     */
-    @Override
-    public DataTableEntity getList(String tableName, String filter, String[] fields, Object[] params) throws com.product.core.exception.BaseException {
-        StringBuilder sql = new StringBuilder("SELECT ");
-        if (ArrayUtil.isEmpty(fields)) {
-            sql.append(" * ");
-        } else {
-            for (int i = 0; i < fields.length; i++) {
-                sql.append(fields[i]);
-                if (i + 1 < fields.length) {
-                    sql.append(",");
-                }
-            }
-        }
-        sql.append(" FROM ");
-        sql.append(tableName);
-        if (!StringUtils.isEmpty(filter)) {
-            sql.append(" WHERE (").append(filter).append(" ) ");
-        }
-        return this.getList(sql.toString(), params);
-    }
+	/**
+	 * 鏌ヨ鍒楄〃鏁版嵁
+	 *
+	 * @param tableName 琛ㄥ悕
+	 * @param filter    鏉′欢
+	 * @param fields
+	 * @param params    鍙傛暟
+	 * @return
+	 */
+	@Override
+	public DataTableEntity getList(String tableName, String filter, String[] fields, Object[] params) throws com.product.core.exception.BaseException {
+		StringBuilder sql = new StringBuilder("SELECT ");
+		if (ArrayUtil.isEmpty(fields)) {
+			sql.append(" * ");
+		} else {
+			for (int i = 0; i < fields.length; i++) {
+				sql.append(fields[i]);
+				if (i + 1 < fields.length) {
+					sql.append(",");
+				}
+			}
+		}
+		sql.append(" FROM ");
+		sql.append(tableName);
+		if (!StringUtils.isEmpty(filter)) {
+			sql.append(" WHERE (").append(filter).append(" ) ");
+		}
+		return this.getList(sql.toString(), params);
+	}
 
-    /**
-     * 鏌ヨ鍒楄〃鏁版嵁
-     *
-     * @param tableName 琛ㄥ悕
-     * @param filter    鏉′欢
-     * @param params    鍙傛暟
-     * @param pageIndex 椤垫暟
-     * @param pageSize  鏉℃暟
-     * @return
-     */
-    @Override
-    public DataTableEntity getList(String tableName, String filter, Object[] params, int pageIndex, int pageSize) throws com.product.core.exception.BaseException {
-        StringBuilder sql = new StringBuilder();
-        sql.append(" SELECT * FROM ").append(tableName);
-        if (!StringUtils.isEmpty(filter)) {
-            sql.append(" WHERE (").append(filter).append(" )");
-        }
-        return getList(sql.toString(), params, pageIndex, pageSize);
-    }
+	/**
+	 * 鏌ヨ鍒楄〃鏁版嵁
+	 *
+	 * @param tableName 琛ㄥ悕
+	 * @param filter    鏉′欢
+	 * @param params    鍙傛暟
+	 * @param pageIndex 椤垫暟
+	 * @param pageSize  鏉℃暟
+	 * @return
+	 */
+	@Override
+	public DataTableEntity getList(String tableName, String filter, Object[] params, int pageIndex, int pageSize) throws com.product.core.exception.BaseException {
+		StringBuilder sql = new StringBuilder();
+		sql.append(" SELECT * FROM ").append(tableName);
+		if (!StringUtils.isEmpty(filter)) {
+			sql.append(" WHERE (").append(filter).append(" )");
+		}
+		return getList(sql.toString(), params, pageIndex, pageSize);
+	}
 
 
-    @Override
-    public DataTableEntity getList(String tableName, String filter, Object[] params, String orderBy, int pageIndex, int pageSize) throws com.product.core.exception.BaseException {
-        StringBuilder sql = new StringBuilder();
-        sql.append(" SELECT * FROM ").append(tableName);
-        if (!StringUtils.isEmpty(filter)) {
-            sql.append(" WHERE (").append(filter).append(" )");
-        }
-        if (!StringUtils.isEmpty(orderBy)) {
-            sql.append(" ORDER BY ").append(orderBy);
-        }
-        return getList(sql.toString(), params, pageIndex, pageSize);
-    }
+	@Override
+	public DataTableEntity getList(String tableName, String filter, Object[] params, String orderBy, int pageIndex, int pageSize) throws com.product.core.exception.BaseException {
+		StringBuilder sql = new StringBuilder();
+		sql.append(" SELECT * FROM ").append(tableName);
+		if (!StringUtils.isEmpty(filter)) {
+			sql.append(" WHERE (").append(filter).append(" )");
+		}
+		if (!StringUtils.isEmpty(orderBy)) {
+			sql.append(" ORDER BY ").append(orderBy);
+		}
+		return getList(sql.toString(), params, pageIndex, pageSize);
+	}
 
-    @Override
-    public DataTableEntity getList(String tableName, String[] fields, String filter, Object[] params, String orderBy, int pageIndex, int pageSize) throws com.product.core.exception.BaseException {
-        StringBuilder sql = new StringBuilder();
-        sql.append(" SELECT ");
-        if (ArrayUtil.isEmpty(fields)) {
-            sql.append("*");
-        } else {
-            for (int i = 0; i < fields.length; i++) {
-                sql.append(fields[i]);
-                if (i + 1 < fields.length) {
-                    sql.append(",");
-                }
-            }
-        }
-        sql.append(" FROM ").append(tableName);
-        if (!StringUtils.isEmpty(filter)) {
-            sql.append(" WHERE (").append(filter).append(" )");
-        }
-        if (!StringUtils.isEmpty(orderBy)) {
-            sql.append(" ORDER BY ").append(orderBy);
-        }
-        return null;
-    }
+	@Override
+	public DataTableEntity getList(String tableName, String[] fields, String filter, Object[] params, String orderBy, int pageIndex, int pageSize) throws com.product.core.exception.BaseException {
+		StringBuilder sql = new StringBuilder();
+		sql.append(" SELECT ");
+		if (ArrayUtil.isEmpty(fields)) {
+			sql.append("*");
+		} else {
+			for (int i = 0; i < fields.length; i++) {
+				sql.append(fields[i]);
+				if (i + 1 < fields.length) {
+					sql.append(",");
+				}
+			}
+		}
+		sql.append(" FROM ").append(tableName);
+		if (!StringUtils.isEmpty(filter)) {
+			sql.append(" WHERE (").append(filter).append(" )");
+		}
+		if (!StringUtils.isEmpty(orderBy)) {
+			sql.append(" ORDER BY ").append(orderBy);
+		}
+		return null;
+	}
 
-    public DataTableEntity getList(String sql, Object[] params, int pageIndex, int pageSize) throws com.product.core.exception.BaseException {
-        int number = getPageParam(pageIndex, pageSize);
-        StringBuilder sb = new StringBuilder(sql);
-        sb.append(" LIMIT ?,? ");
-        if (params == null) {
-            params = new Object[]{number, pageSize};
-        } else {
-            params = ArrayUtil.append(params, number, pageSize);
-        }
-        return this.getList(sb.toString(), params);
-    }
+	public DataTableEntity getList(String sql, Object[] params, int pageIndex, int pageSize) throws com.product.core.exception.BaseException {
+		int number = getPageParam(pageIndex, pageSize);
+		StringBuilder sb = new StringBuilder(sql);
+		sb.append(" LIMIT ?,? ");
+		if (params == null) {
+			params = new Object[]{number, pageSize};
+		} else {
+			params = ArrayUtil.append(params, number, pageSize);
+		}
+		return this.getList(sb.toString(), params);
+	}
 
-    private int getPageParam(int pageIndex, int pageSize) {
-        return pageIndex <= 1 ? 0 : (pageIndex - 1) * pageSize;
-    }
+	private int getPageParam(int pageIndex, int pageSize) {
+		return pageIndex <= 1 ? 0 : (pageIndex - 1) * pageSize;
+	}
 
-    /**
-     * 鏌ヨ涓�鏉℃暟鎹�
-     *
-     * @param sql
-     * @return
-     */
-    @Override
-    public FieldSetEntity getOne(String sql) throws com.product.core.exception.BaseException {
-        return this.getOne(sql, new Object[]{});
-    }
+	/**
+	 * 鏌ヨ涓�鏉℃暟鎹�
+	 *
+	 * @param sql
+	 * @return
+	 */
+	@Override
+	public FieldSetEntity getOne(String sql) throws com.product.core.exception.BaseException {
+		return this.getOne(sql, new Object[]{});
+	}
 
-    /**
-     * 鏌ヨ涓�鏉℃暟鎹�
-     *
-     * @param sql    sql
-     * @param params 鍙傛暟
-     * @return
-     */
-    @Override
-    public FieldSetEntity getOne(String sql, Object[] params) throws com.product.core.exception.BaseException {
-        DataTableEntity list = this.getList(sql, params);
-        if (DataTableEntity.isEmpty(list)) {
-            return null;
-        }
-        return list.getFieldSetEntity(0);
-    }
+	/**
+	 * 鏌ヨ涓�鏉℃暟鎹�
+	 *
+	 * @param sql    sql
+	 * @param params 鍙傛暟
+	 * @return
+	 */
+	@Override
+	public FieldSetEntity getOne(String sql, Object[] params) throws com.product.core.exception.BaseException {
+		DataTableEntity list = this.getList(sql, params);
+		if (DataTableEntity.isEmpty(list)) {
+			return null;
+		}
+		return list.getFieldSetEntity(0);
+	}
 
-    /**
-     * 鏌ヨ涓�鏉℃暟鎹�
-     *
-     * @param tableName
-     * @param filter
-     * @return
-     */
-    @Override
-    public FieldSetEntity getOne(String tableName, String filter) throws com.product.core.exception.BaseException {
-        return this.getOne(tableName, filter, null);
-    }
+	/**
+	 * 鏌ヨ涓�鏉℃暟鎹�
+	 *
+	 * @param tableName
+	 * @param filter
+	 * @return
+	 */
+	@Override
+	public FieldSetEntity getOne(String tableName, String filter) throws com.product.core.exception.BaseException {
+		return this.getOne(tableName, filter, null);
+	}
 
-    /**
-     * 鏌ヨ涓�鏉℃暟鎹�
-     *
-     * @param tableName 琛ㄥ悕
-     * @param filter    鏉′欢
-     * @param params    鍙傛暟
-     * @return
-     */
-    @Override
-    public FieldSetEntity getOne(String tableName, String filter, Object[] params) throws com.product.core.exception.BaseException {
-        return this.getOne(tableName, filter, null, params);
-    }
+	/**
+	 * 鏌ヨ涓�鏉℃暟鎹�
+	 *
+	 * @param tableName 琛ㄥ悕
+	 * @param filter    鏉′欢
+	 * @param params    鍙傛暟
+	 * @return
+	 */
+	@Override
+	public FieldSetEntity getOne(String tableName, String filter, Object[] params) throws com.product.core.exception.BaseException {
+		return this.getOne(tableName, filter, null, params);
+	}
 
-    /**
-     * 鏌ヨ涓�鏉℃暟鎹�
-     *
-     * @param tableName 琛ㄥ悕
-     * @param filter    鏉′欢
-     * @param fields
-     * @param params    鍙傛暟
-     * @return
-     */
-    @Override
-    public FieldSetEntity getOne(String tableName, String filter, String[] fields, Object[] params) throws com.product.core.exception.BaseException {
-        StringBuilder sb = new StringBuilder();
-        sb.append(" SELECT ");
-        if (ArrayUtil.isEmpty(fields)) {
-            sb.append(" * ");
-        } else {
-            for (int i = 0; i < fields.length; i++) {
-                sb.append(fields[i]);
-                if (i + 1 < fields.length) {
-                    sb.append(",");
-                }
-            }
-        }
-        sb.append(" FROM ").append(tableName);
-        sb.append(" WHERE ");
-        if (!StringUtils.isEmpty(filter)) {
-            sb.append("  (").append(filter).append(") ");
-        }
-        sb.append(" limit 1");
-        DataTableEntity list = this.getList(sb.toString(), params);
-        return DataTableEntity.isEmpty(list) ? null : list.getFieldSetEntity(0);
-    }
+	/**
+	 * 鏌ヨ涓�鏉℃暟鎹�
+	 *
+	 * @param tableName 琛ㄥ悕
+	 * @param filter    鏉′欢
+	 * @param fields
+	 * @param params    鍙傛暟
+	 * @return
+	 */
+	@Override
+	public FieldSetEntity getOne(String tableName, String filter, String[] fields, Object[] params) throws com.product.core.exception.BaseException {
+		StringBuilder sb = new StringBuilder();
+		sb.append(" SELECT ");
+		if (ArrayUtil.isEmpty(fields)) {
+			sb.append(" * ");
+		} else {
+			for (int i = 0; i < fields.length; i++) {
+				sb.append(fields[i]);
+				if (i + 1 < fields.length) {
+					sb.append(",");
+				}
+			}
+		}
+		sb.append(" FROM ").append(tableName);
+		sb.append(" WHERE ");
+		if (!StringUtils.isEmpty(filter)) {
+			sb.append("  (").append(filter).append(") ");
+		}
+		sb.append(" limit 1");
+		DataTableEntity list = this.getList(sb.toString(), params);
+		return DataTableEntity.isEmpty(list) ? null : list.getFieldSetEntity(0);
+	}
 
-    /**
-     * 鎵瑰鐞嗘坊鍔犳暟鎹�
-     *
-     * @param data 鏁版嵁闆�
-     * @return
-     */
-    @Override
-    public BatchResultEntity addBatch(DataTableEntity data) throws com.product.core.exception.BaseException {
-        info("寮�濮嬫壒閲忔柊澧炴暟鎹�");
-        if (DataTableEntity.isEmpty(data)) {
-            info("鎵归噺鏂板鏁版嵁鏉℃暟涓�0");
-            return new BatchResultEntity(0);
-        }
-        TimeInterval timer = DateUtil.timer();
-        info("鎵归噺鏂板鏁版嵁鏉℃暟涓猴細" + data.getRows());
-        BatchResultEntity batchResultEntity = new BatchResultEntity(data.getRows());
-//        Connection connection = ConnectionManager.getConnection(dataBaseEntity);
-        try {
-            StringBuilder insertSql = BatchUtil.getInsertSql(data.getMeta());
-            info("SQL:" + insertSql);
-            Connection connection = getConnection();
-            connection.setAutoCommit(false);
+	/**
+	 * 鎵瑰鐞嗘坊鍔犳暟鎹�
+	 *
+	 * @param data 鏁版嵁闆�
+	 * @return
+	 */
+	@Override
+	public BatchResultEntity addBatch(DataTableEntity data) throws com.product.core.exception.BaseException {
+		info("寮�濮嬫壒閲忔柊澧炴暟鎹�");
+		if (DataTableEntity.isEmpty(data)) {
+			info("鎵归噺鏂板鏁版嵁鏉℃暟涓�0");
+			return new BatchResultEntity(0);
+		}
+		TimeInterval timer = DateUtil.timer();
+		info("鎵归噺鏂板鏁版嵁鏉℃暟涓猴細" + data.getRows());
+		BatchResultEntity batchResultEntity = new BatchResultEntity(data.getRows());
+//        ConnectionInterface connection = ConnectionManager.getConnection(dataBaseEntity);
+		try {
+			StringBuilder insertSql = BatchUtil.getInsertSql(data.getMeta());
+			info("SQL:" + insertSql);
+			Connection connection = getConnection();
+			connection.setAutoCommit(false);
 
-            try (PreparedStatement pst = connection.prepareStatement(insertSql.toString())) {
-                Object[] fields = data.getMeta().getFields();
-                for (int i = 0; i < data.getRows(); i++) {
-                    FieldSetEntity fse = data.getFieldSetEntity(i);
-                    for (int j = 1; j <= fields.length; j++) {
-                        if (fse.getObject(fields[j - 1].toString()) instanceof oracle.sql.TIMESTAMP) {
-                            pst.setObject(j, fse.getObject(fields[j - 1].toString()).toString());
-                        } else {
-                            pst.setObject(j, fse.getObject(fields[j - 1].toString()));
-                        }
-                    }
-                    pst.addBatch();
-                }
-                info("寮�濮嬫墽琛屾壒閲忔彁浜ゆ暟鎹�");
-                int[] ints = pst.executeBatch();
-                connection.commit();
-                info("鎵ц鎵归噺鎻愪氦鏁版嵁瀹屾垚锛屽叡鎻愪氦 " + data.getRows() + " 鏉�,鑰楁椂锛�" + timer.intervalSecond() + " 绉� 锛�");
-                pst.clearBatch();
-            } catch (Exception e) {
-                throw e;
-            } finally {
-                connection.setAutoCommit(true);
-            }
-        } catch (Exception e) {
-            SpringMVCContextHolder.getSystemLogger().error(e);
-            throw new BaseException(ErrorCode.ADD_BATCH_ERROR, e);
-        }
-        return batchResultEntity;
-    }
+			try (PreparedStatement pst = connection.prepareStatement(insertSql.toString())) {
+				Object[] fields = data.getMeta().getFields();
+				for (int i = 0; i < data.getRows(); i++) {
+					FieldSetEntity fse = data.getFieldSetEntity(i);
+					for (int j = 1; j <= fields.length; j++) {
+						if (fse.getObject(fields[j - 1].toString()) instanceof oracle.sql.TIMESTAMP) {
+							pst.setObject(j, fse.getObject(fields[j - 1].toString()).toString());
+						} else {
+							pst.setObject(j, fse.getObject(fields[j - 1].toString()));
+						}
+					}
+					pst.addBatch();
+				}
+				info("寮�濮嬫墽琛屾壒閲忔彁浜ゆ暟鎹�");
+				int[] ints = pst.executeBatch();
+				connection.commit();
+				info("鎵ц鎵归噺鎻愪氦鏁版嵁瀹屾垚锛屽叡鎻愪氦 " + data.getRows() + " 鏉�,鑰楁椂锛�" + timer.intervalSecond() + " 绉� 锛�");
+				pst.clearBatch();
+			} catch (Exception e) {
+				SpringMVCContextHolder.getSystemLogger().error(e);
+				throw e;
+			} finally {
+				connection.setAutoCommit(true);
+			}
+		} catch (Exception e) {
+			SpringMVCContextHolder.getSystemLogger().error(e);
+			throw new BaseException(ErrorCode.ADD_BATCH_ERROR, e);
+		}
+		return batchResultEntity;
+	}
 
-    /**
-     * 鎵瑰鐞嗘坊鍔犳暟鎹�
-     *
-     * @param data                      鏁版嵁闆�
-     * @param AutomaticallyPrimaryField
-     * @return
-     */
-    @Override
-    @Deprecated
-    public BatchResultEntity addBatch(DataTableEntity data, String AutomaticallyPrimaryField) throws com.product.core.exception.BaseException {
-        return addBatch(data);
-    }
+	/**
+	 * 鎵瑰鐞嗘坊鍔犳暟鎹�
+	 *
+	 * @param data                      鏁版嵁闆�
+	 * @param AutomaticallyPrimaryField
+	 * @return
+	 */
+	@Override
+	@Deprecated
+	public BatchResultEntity addBatch(DataTableEntity data, String AutomaticallyPrimaryField) throws com.product.core.exception.BaseException {
+		return addBatch(data);
+	}
 
-    @Override
-    public int update(FieldSetEntity fse, UpdateFilterEntity updateFilter) throws com.product.core.exception.BaseException {
-        //todo 寰呭疄鐜�
-        return -1;
-    }
+	@Override
+	public int update(FieldSetEntity fse, UpdateFilterEntity updateFilter) throws com.product.core.exception.BaseException {
+		//todo 寰呭疄鐜�
+		return -1;
+	}
 
-    /**
-     * 鎵瑰鐞嗘洿鏂版暟鎹�
-     *
-     * @param data
-     * @param updateFilter 杩囨护鏉′欢
-     * @param isCommit     鑷姩鎻愪氦
-     * @return
-     */
-    @Override
-    public BatchResultEntity updateBatch(DataTableEntity data, UpdateFilterEntity updateFilter, boolean isCommit) throws com.product.core.exception.BaseException {
-        info("寮�濮嬫壒閲忔洿鏂版暟鎹�");
-        if (DataTableEntity.isEmpty(data)) {
-            info("鎵归噺鏇存柊鏁版嵁鏉℃暟涓�0");
-            return new BatchResultEntity(0);
-        }
-        TimeInterval timer = DateUtil.timer();
-        info("鎵归噺鏇存柊鏁版嵁鏉℃暟涓猴細" + data.getRows());
-        BatchResultEntity batchResultEntity = new BatchResultEntity(data.getRows());
-//        Connection connection = ConnectionManager.getConnection(dataBaseEntity);
-        try {
-            StringBuilder updateSql = BatchUtil.getUpdateSql(data.getMeta(), updateFilter.getFilter());
-            info("SQL: " + updateSql);
-            Connection connection = getConnection();
-            connection.setAutoCommit(false);
-            try (PreparedStatement pst = connection.prepareStatement(updateSql.toString())) {
-                Object[] fields = data.getMeta().getFields();
-                for (int i = 0; i < data.getRows(); i++) {
-                    FieldSetEntity fse = data.getFieldSetEntity(i);
-                    int j = 1;
-                    for (; j <= fields.length; j++) {
-                        Object value = fse.getObject(fields[j - 1].toString());
-                        pst.setObject(j,value );
-                        info("鍙傛暟锛� " + (fields[j - 1]) + " = " + value);
-                    }
-                    j--;
-                    Object[] valueFields = updateFilter.getValueFields();
-                    for (int i1 = 1; i1 <= valueFields.length; i1++) {
-                        Object value = fse.getObject(valueFields[i1 - 1].toString());
-                        pst.setObject(j + i1, value);
-                        info("鍙傛暟锛� " + (valueFields[i1 - 1]) + " = " + value);
-                    }
-                    pst.addBatch();
-                }
-                info("寮�濮嬫墽琛屾壒閲忔彁浜ゆ暟鎹�");
-                pst.executeBatch();
-                info("鎵ц鎵归噺鎻愪氦鏁版嵁瀹屾垚锛屽叡鎻愪氦 " + data.getRows() + " 鏉�,鑰楁椂锛�" + timer.intervalSecond() + " 绉� 锛�");
-                pst.clearBatch();
-                if (isCommit) {
-                    connection.commit();
-                }
-                batchResultEntity.setConnection(connection);
-                return batchResultEntity;
-            } catch (Exception e) {
-                throw e;
-            } finally {
-                if (isCommit) {
-                    connection.setAutoCommit(true);
-                }
+	/**
+	 * 鎵瑰鐞嗘洿鏂版暟鎹�
+	 *
+	 * @param data
+	 * @param updateFilter 杩囨护鏉′欢
+	 * @param isCommit     鑷姩鎻愪氦
+	 * @return
+	 */
+	@Override
+	public BatchResultEntity updateBatch(DataTableEntity data, UpdateFilterEntity updateFilter, boolean isCommit) throws com.product.core.exception.BaseException {
+		info("寮�濮嬫壒閲忔洿鏂版暟鎹�");
+		if (DataTableEntity.isEmpty(data)) {
+			info("鎵归噺鏇存柊鏁版嵁鏉℃暟涓�0");
+			return new BatchResultEntity(0);
+		}
+		TimeInterval timer = DateUtil.timer();
+		info("鎵归噺鏇存柊鏁版嵁鏉℃暟涓猴細" + data.getRows());
+		BatchResultEntity batchResultEntity = new BatchResultEntity(data.getRows());
+//        ConnectionInterface connection = ConnectionManager.getConnection(dataBaseEntity);
+		try {
+			StringBuilder updateSql = BatchUtil.getUpdateSql(data.getMeta(), updateFilter.getFilter());
+			info("SQL: " + updateSql);
+			Connection connection = getConnection();
+			connection.setAutoCommit(false);
+			try (PreparedStatement pst = connection.prepareStatement(updateSql.toString())) {
+				Object[] fields = data.getMeta().getFields();
+				for (int i = 0; i < data.getRows(); i++) {
+					FieldSetEntity fse = data.getFieldSetEntity(i);
+					int j = 1;
+					for (; j <= fields.length; j++) {
+						Object value = fse.getObject(fields[j - 1].toString());
+						pst.setObject(j, value);
+						info("鍙傛暟锛� " + (fields[j - 1]) + " = " + value);
+					}
+					j--;
+					Object[] valueFields = updateFilter.getValueFields();
+					for (int i1 = 1; i1 <= valueFields.length; i1++) {
+						Object value = fse.getObject(valueFields[i1 - 1].toString());
+						pst.setObject(j + i1, value);
+						info("鍙傛暟锛� " + (valueFields[i1 - 1]) + " = " + value);
+					}
+					pst.addBatch();
+				}
+				info("寮�濮嬫墽琛屾壒閲忔彁浜ゆ暟鎹�");
+				pst.executeBatch();
+				info("鎵ц鎵归噺鎻愪氦鏁版嵁瀹屾垚锛屽叡鎻愪氦 " + data.getRows() + " 鏉�,鑰楁椂锛�" + timer.intervalSecond() + " 绉� 锛�");
+				pst.clearBatch();
+				if (isCommit) {
+					connection.commit();
+				}
+				batchResultEntity.setConnection(connection);
+				return batchResultEntity;
+			} catch (Exception e) {
+				throw e;
+			} finally {
+				if (isCommit) {
+					connection.setAutoCommit(true);
+				}
 //                this.closeConnection();
-            }
-        } catch (Exception e) {
-            e.printStackTrace();
-            SpringMVCContextHolder.getSystemLogger().error(e);
-            throw new BaseException(ErrorCode.UPDATE_BATCH_ERROR, e);
-        }
-    }
+			}
+		} catch (Exception e) {
+			e.printStackTrace();
+			SpringMVCContextHolder.getSystemLogger().error(e);
+			throw new BaseException(ErrorCode.UPDATE_BATCH_ERROR, e);
+		}
+	}
 
-    /**
-     * 鍒犻櫎鏁版嵁
-     *
-     * @param sql    sql璇彞
-     * @param params 鍙傛暟
-     * @return
-     */
-    @Override
-    public Boolean delete(String sql, Object[] params) throws com.product.core.exception.BaseException {
-        return executeSql(sql, params);
-    }
+	/**
+	 * 鍒犻櫎鏁版嵁
+	 *
+	 * @param sql    sql璇彞
+	 * @param params 鍙傛暟
+	 * @return
+	 */
+	@Override
+	public Boolean delete(String sql, Object[] params) throws com.product.core.exception.BaseException {
+		return executeSql(sql, params);
+	}
 
-    /**
-     * 鍒犻櫎鏁版嵁
-     *
-     * @param tableName 琛ㄥ悕
-     * @param filter    鏉′欢
-     * @return
-     */
-    @Override
-    public Boolean delete(String tableName, String filter) throws com.product.core.exception.BaseException {
-        return delete(tableName, filter, null);
-    }
+	/**
+	 * 鍒犻櫎鏁版嵁
+	 *
+	 * @param tableName 琛ㄥ悕
+	 * @param filter    鏉′欢
+	 * @return
+	 */
+	@Override
+	public Boolean delete(String tableName, String filter) throws com.product.core.exception.BaseException {
+		return delete(tableName, filter, null);
+	}
 
-    /**
-     * 鍒犻櫎鏁版嵁
-     *
-     * @param tableName 琛ㄥ悕
-     * @param filter    鏉′欢
-     * @param params    鍙傛暟
-     * @return
-     */
-    @Override
-    public Boolean delete(String tableName, String filter, Object[] params) throws com.product.core.exception.BaseException {
-        StringBuilder sql = new StringBuilder();
-        sql.append(" DELETE FROM ").append(tableName);
-        if (!StringUtils.isEmpty(filter)) {
-            sql.append(" WHERE (").append(filter).append(" ) ");
-        }
-        return executeSql(sql.toString(), params);
-    }
+	/**
+	 * 鍒犻櫎鏁版嵁
+	 *
+	 * @param tableName 琛ㄥ悕
+	 * @param filter    鏉′欢
+	 * @param params    鍙傛暟
+	 * @return
+	 */
+	@Override
+	public Boolean delete(String tableName, String filter, Object[] params) throws com.product.core.exception.BaseException {
+		StringBuilder sql = new StringBuilder();
+		sql.append(" DELETE FROM ").append(tableName);
+		if (!StringUtils.isEmpty(filter)) {
+			sql.append(" WHERE (").append(filter).append(" ) ");
+		}
+		return executeSql(sql.toString(), params);
+	}
 
-    public int deleteRInt(String tableName, String filter, Object[] params) throws com.product.core.exception.BaseException {
-        StringBuilder sql = new StringBuilder();
-        sql.append(" DELETE FROM ").append(tableName);
-        if (!StringUtils.isEmpty(filter)) {
-            sql.append(" WHERE (").append(filter).append(" ) ");
-        }
-        return executeSqlResult(sql.toString(), params);
-    }
+	public int deleteRInt(String tableName, String filter, Object[] params) throws com.product.core.exception.BaseException {
+		StringBuilder sql = new StringBuilder();
+		sql.append(" DELETE FROM ").append(tableName);
+		if (!StringUtils.isEmpty(filter)) {
+			sql.append(" WHERE (").append(filter).append(" ) ");
+		}
+		return executeSqlResult(sql.toString(), params);
+	}
 
 
-    /**
-     * 鎵цsql
-     *
-     * @param sql
-     * @return
-     */
-    @Override
-    public boolean executeSql(String sql) throws com.product.core.exception.BaseException {
-        return executeSql(sql, null);
-    }
+	/**
+	 * 鎵цsql
+	 *
+	 * @param sql
+	 * @return
+	 */
+	@Override
+	public boolean executeSql(String sql) throws com.product.core.exception.BaseException {
+		return executeSql(sql, null);
+	}
 
 
-    /**
-     * 鎵цsql
-     *
-     * @param sql
-     * @param params
-     * @return
-     */
-    @Override
-    public boolean executeSql(String sql, Object[] params) throws com.product.core.exception.BaseException {
-        info("鎵цSQL锛歕n" + sql);
-        try (PreparedStatement pst = getConnection().prepareStatement(sql)) {
-            if (params != null && params.length > 0) {
-                for (int i = 0; i < params.length; i++) {
-                    info("param" + (i + 1) + ": " + params[i]);
-                    pst.setObject(i + 1, params[i].toString());
-                }
-            }
-            return pst.execute();
-        } catch (Exception e) {
-            e.printStackTrace();
-            info("ERROR_SQL锛歕n" + sql);
-            throw new BaseException(ErrorCode.EXECUTE_SQL_FAIL, e);
-        }
-    }
+	/**
+	 * 鎵цsql
+	 *
+	 * @param sql
+	 * @param params
+	 * @return
+	 */
+	@Override
+	public boolean executeSql(String sql, Object[] params) throws com.product.core.exception.BaseException {
+		info("鎵цSQL锛歕n" + sql);
+		try (PreparedStatement pst = getConnection().prepareStatement(sql)) {
+			if (params != null && params.length > 0) {
+				for (int i = 0; i < params.length; i++) {
+					info("param" + (i + 1) + ": " + params[i]);
+					pst.setObject(i + 1, params[i].toString());
+				}
+			}
+			return pst.execute();
+		} catch (Exception e) {
+			e.printStackTrace();
+			info("ERROR_SQL锛歕n" + sql);
+			throw new BaseException(ErrorCode.EXECUTE_SQL_FAIL, e);
+		}
+	}
 
-    /**
-     * 鎵цsql
-     *
-     * @param sql
-     * @param params
-     * @return
-     */
-    public int executeSqlResult(String sql, Object[] params) throws com.product.core.exception.BaseException {
-        try (PreparedStatement pst = getConnection().prepareStatement(sql)) {
-            info("鎵цSQL锛歕n" + sql);
-            if (params != null && params.length > 0) {
-                for (int i = 0; i < params.length; i++) {
-                    info("param" + (i + 1) + ": " + params[i]);
-                    pst.setObject(i + 1, params[i].toString());
-                }
-            }
-            return pst.executeUpdate();
-        } catch (Exception e) {
-            throw new BaseException(ErrorCode.EXECUTE_SQL_FAIL, e);
-        }
-    }
+	/**
+	 * 鎵цsql
+	 *
+	 * @param sql
+	 * @param params
+	 * @return
+	 */
+	public int executeSqlResult(String sql, Object[] params) throws com.product.core.exception.BaseException {
+		try (PreparedStatement pst = getConnection().prepareStatement(sql)) {
+			info("鎵цSQL锛歕n" + sql);
+			if (params != null && params.length > 0) {
+				for (int i = 0; i < params.length; i++) {
+					info("param" + (i + 1) + ": " + params[i]);
+					pst.setObject(i + 1, params[i].toString());
+				}
+			}
+			return pst.executeUpdate();
+		} catch (Exception e) {
+			throw new BaseException(ErrorCode.EXECUTE_SQL_FAIL, e);
+		}
+	}
 
-    @Override
-    public void closeConnection() {
-        try {
-            if (this.connection != null && !this.connection.isClosed()) {
-                this.connection.close();
-            }
-        } catch (SQLException e) {
-            e.printStackTrace();
-        } finally {
-            this.connection = null;
-        }
-    }
+	@Override
+	public void closeConnection() {
+		try {
+			if (this.connection != null && !this.connection.isClosed()) {
+				this.connection.close();
+			}
+		} catch (SQLException e) {
+			e.printStackTrace();
+		} finally {
+			this.connection = null;
+		}
+	}
 
-    class BaseException extends com.product.core.exception.BaseException {
-        public BaseException(IEnum a) {
-            super(a);
-        }
+	class BaseException extends com.product.core.exception.BaseException {
+		public BaseException(IEnum a) {
+			super(a);
+		}
 
 
-        public BaseException(IEnum iEnum, Throwable throwable) {
-            super(iEnum.getValue(), iEnum.getText() + (throwable.getMessage() != null ? "," + throwable.getMessage() : ""));
-        }
-    }
+		public BaseException(IEnum iEnum, Throwable throwable) {
+			super(iEnum.getValue(), iEnum.getText() + (throwable.getMessage() != null ? "," + throwable.getMessage() : ""));
+		}
+	}
 
-    @Override
-    protected void finalize() throws Throwable {
-        this.closeConnection();
-        super.finalize();
-    }
+	@Override
+	protected void finalize() throws Throwable {
+		this.closeConnection();
+		super.finalize();
+	}
 }

--
Gitblit v1.9.2