chenjiahe
2022-06-28 4484acb56810d06ef5c2f78190a93688a61f83a7
src/main/java/com/hx/mybatis/aes/springbean/InitMysqlData.java
@@ -10,7 +10,6 @@
import com.hx.util.StringUtils;
import com.hx.util.mysql.aes.MysqlHexAesTool;
import javax.annotation.PostConstruct;
import java.lang.reflect.Field;
import java.util.*;
import java.util.concurrent.ExecutorService;
@@ -21,7 +20,7 @@
    /**
     * 项目启动就执行后就执行该方法
     */
    @PostConstruct
    //@PostConstruct 2022-06-17屏掉,暂时用不上
    public static void initData(String packPath, CommonService commonService){
        //项目启动的时候填入
@@ -41,7 +40,6 @@
                for(FieldData fieldData:fieldDatas){
                    //获取条数
                    sqlSentence.sqlSentence("SELECT COUNT(0) FROM "+fieldData.getTableName(),values);
                    System.out.println("sqlSentence3:"+sqlSentence.getSqlSentence());
                    int total = commonService.selectCountSql(sqlSentence);
                    if(total ==0 ){
                        continue;
@@ -77,11 +75,14 @@
        for(String fieldName:fieldData.getEncrypFields()){
            selectField.append(","+fieldName);
        }
        pageNum = pageNum*pageSize;
        sqlSentence.sqlSentence("SELECT "+selectField.toString()+" FROM "+fieldData.getTableName()+" LIMIT "+pageNum+","+pageSize,values);
        System.out.println("sqlSentence:"+sqlSentence.getSqlSentence());
        List<Map<String,Object>> list = commonService.selectListMap(CommonMapper.class,sqlSentence);
        boolean isUpdate = false;
        for (Map<String,Object> map:list){
            isUpdate = false;
            StringBuilder setField = new StringBuilder();
            for (Map.Entry<String, Object> entry : map.entrySet()) {
                String mapKey = entry.getKey();
@@ -99,14 +100,16 @@
                    setField.append(",");
                }
                setField.append(mapKey+" = #{m."+mapKey+"}");
                isUpdate = true;
            }
            values = map;
            sqlSentence.sqlSentence("UPDATE "+fieldData.getTableName()+" SET "+setField.toString()+" WHERE "+fieldData.getId()+" = #{m."+fieldData.getId()+"}",values);
            System.out.println("sqlSentence2:"+sqlSentence.getSqlSentence());
            if(isUpdate){
                values = map;
                sqlSentence.sqlSentence("UPDATE "+fieldData.getTableName()+" SET "+setField.toString()+" WHERE "+fieldData.getId()+" = #{m."+fieldData.getId()+"}",values);
            if(commonService.updateSentence(sqlSentence)!=1){
                throw new ServiceException("更新超过1条,更新失败!");
                if(commonService.updateSentence(sqlSentence)!=1){
                    throw new ServiceException("更新超过1条,更新失败!");
                }
            }
        }