|
@@ -8,6 +8,9 @@ import com.skyversation.poiaddr.entity.SjArrDzbzhSjWcbryDzxx;
|
|
import com.skyversation.poiaddr.util.status.AddressLevel;
|
|
import com.skyversation.poiaddr.util.status.AddressLevel;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
+import java.sql.PreparedStatement;
|
|
|
|
+import java.sql.SQLException;
|
|
|
|
+import java.sql.Types;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
import java.util.concurrent.ExecutionException;
|
|
import java.util.concurrent.ExecutionException;
|
|
import java.util.concurrent.ExecutorService;
|
|
import java.util.concurrent.ExecutorService;
|
|
@@ -99,66 +102,64 @@ public class SjArrDzbzhSjWcbryDzxxServiceImpl {
|
|
|
|
|
|
// 批量修改地址表
|
|
// 批量修改地址表
|
|
public void updateDatas(List<SjArrDzbzhSjWcbryDzxx> sjArrDzbzhSjWcbryDzxxList) {
|
|
public void updateDatas(List<SjArrDzbzhSjWcbryDzxx> sjArrDzbzhSjWcbryDzxxList) {
|
|
- for (SjArrDzbzhSjWcbryDzxx item : sjArrDzbzhSjWcbryDzxxList) {
|
|
|
|
- if (!item.getId().isEmpty()) {
|
|
|
|
- StringBuilder sql = new StringBuilder();
|
|
|
|
- sql.append("update sj_zrr_dzbzh_sj_wcbry_dzxx set ");
|
|
|
|
- if (item.getLat() == null) {
|
|
|
|
- sql.append(" lat = null");
|
|
|
|
- } else {
|
|
|
|
- sql.append(" lat = '").append(item.getLat()).append("'");
|
|
|
|
- }
|
|
|
|
- if (item.getLon() == null) {
|
|
|
|
- sql.append(", lon = null");
|
|
|
|
- } else {
|
|
|
|
- sql.append(", lon = '").append(item.getLon()).append("'");
|
|
|
|
- }
|
|
|
|
- if (item.getLevel() == null) {
|
|
|
|
- sql.append(", level = null");
|
|
|
|
- } else {
|
|
|
|
- sql.append(", level = '").append(item.getLevel()).append("'");
|
|
|
|
- }
|
|
|
|
- if (item.getAdministrativeDivision() == null) {
|
|
|
|
- sql.append(", administrative_division = null");
|
|
|
|
- } else {
|
|
|
|
- sql.append(", administrative_division = '").append(item.getAdministrativeDivision()).append("'");
|
|
|
|
- }
|
|
|
|
- if (item.getInTheArea() == null) {
|
|
|
|
- sql.append(", in_the_area = null");
|
|
|
|
- } else {
|
|
|
|
- sql.append(", in_the_area = '").append(item.getInTheArea()).append("'");
|
|
|
|
- }
|
|
|
|
- if (item.getMarket() == null) {
|
|
|
|
- sql.append(", market = null");
|
|
|
|
- } else {
|
|
|
|
- sql.append(", market = '").append(item.getMarket()).append("'");
|
|
|
|
- }
|
|
|
|
- if (item.getResultAddrKey() == null) {
|
|
|
|
- sql.append(", result_addr_key = null");
|
|
|
|
- } else {
|
|
|
|
- sql.append(", result_addr_key = '").append(item.getResultAddrKey()).append("'");
|
|
|
|
- }
|
|
|
|
- if (item.getStandardizedAddress() == null) {
|
|
|
|
- sql.append(", standardized_address = null");
|
|
|
|
- } else {
|
|
|
|
- sql.append(", standardized_address = '").append(item.getStandardizedAddress()).append("'");
|
|
|
|
- }
|
|
|
|
- if (item.getUpdateTime() == null) {
|
|
|
|
- sql.append(", update_time = null");
|
|
|
|
- } else {
|
|
|
|
- sql.append(", update_time = ").append(item.getUpdateTime().getTime());
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- sql.append(" where id = '").append(item.getId()).append("'");
|
|
|
|
- try {
|
|
|
|
- int updateDataSum = DbConnection.getInstance().updateSql(sql.toString());
|
|
|
|
- if (updateDataSum < 1) {
|
|
|
|
- System.err.println("------updateError--------------------------------------" + sql + "更新异常!");
|
|
|
|
|
|
+ String sqls = "update sj_zrr_dzbzh_sj_wcbry_dzxx set lat = ?,lon = ?,level = ?, administrative_division = ?, in_the_area = ?, market = ?" +
|
|
|
|
+ ", result_addr_key = ? , standardized_address = ? , update_time = ? where id = ?";
|
|
|
|
+ try (PreparedStatement preparedStatement = DbConnection.getInstance().connection.prepareStatement(sqls)) {
|
|
|
|
+ for (SjArrDzbzhSjWcbryDzxx entity : sjArrDzbzhSjWcbryDzxxList) {
|
|
|
|
+ if (entity.getId() != null) {
|
|
|
|
+ if (entity.getLat() == null) {
|
|
|
|
+ preparedStatement.setNull(1, Types.VARCHAR);
|
|
|
|
+ } else {
|
|
|
|
+ preparedStatement.setString(1, entity.getLat());
|
|
|
|
+ }
|
|
|
|
+ if (entity.getLon() == null) {
|
|
|
|
+ preparedStatement.setNull(2, Types.VARCHAR);
|
|
|
|
+ } else {
|
|
|
|
+ preparedStatement.setString(2, entity.getLon());
|
|
|
|
+ }
|
|
|
|
+ if (entity.getLevel() == null) {
|
|
|
|
+ preparedStatement.setNull(3, Types.VARCHAR);
|
|
|
|
+ } else {
|
|
|
|
+ preparedStatement.setString(3, entity.getLevel());
|
|
|
|
+ }
|
|
|
|
+ if (entity.getAdministrativeDivision() == null) {
|
|
|
|
+ preparedStatement.setNull(4, Types.VARCHAR);
|
|
|
|
+ } else {
|
|
|
|
+ preparedStatement.setString(4, entity.getAdministrativeDivision());
|
|
|
|
+ }
|
|
|
|
+ if (entity.getInTheArea() == null) {
|
|
|
|
+ preparedStatement.setNull(5, Types.VARCHAR);
|
|
|
|
+ } else {
|
|
|
|
+ preparedStatement.setString(5, entity.getInTheArea());
|
|
|
|
+ }
|
|
|
|
+ if (entity.getMarket() == null) {
|
|
|
|
+ preparedStatement.setNull(6, Types.VARCHAR);
|
|
|
|
+ } else {
|
|
|
|
+ preparedStatement.setString(6, entity.getMarket());
|
|
|
|
+ }
|
|
|
|
+ if (entity.getResultAddrKey() == null) {
|
|
|
|
+ preparedStatement.setNull(7, Types.VARCHAR);
|
|
|
|
+ } else {
|
|
|
|
+ preparedStatement.setString(7, entity.getResultAddrKey());
|
|
|
|
+ }
|
|
|
|
+ if (entity.getStandardizedAddress() == null) {
|
|
|
|
+ preparedStatement.setNull(8, Types.VARCHAR);
|
|
|
|
+ } else {
|
|
|
|
+ preparedStatement.setString(8, entity.getStandardizedAddress());
|
|
}
|
|
}
|
|
- } catch (Exception e) {
|
|
|
|
- System.err.println("更新异常" + e);
|
|
|
|
|
|
+ preparedStatement.setLong(9, entity.getUpdateTime().getTime());
|
|
|
|
+ preparedStatement.setString(10, entity.getId());
|
|
|
|
+ // 将当前的 SQL 语句添加到批量操作中
|
|
|
|
+ preparedStatement.addBatch();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ // 执行批量操作
|
|
|
|
+ int[] updateCounts = preparedStatement.executeBatch();
|
|
|
|
+ System.out.println("总条数:" + sjArrDzbzhSjWcbryDzxxList.size() + ";更新的记录数: " + updateCounts.length);
|
|
|
|
+ } catch (SQLException throwables) {
|
|
|
|
+ System.err.println("------updateError--------------------------------------" + sqls + "更新异常!");
|
|
|
|
+ throwables.printStackTrace();
|
|
|
|
+ System.err.println("更新异常" + throwables);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|