From fb2c9fa355cc2e09bc051677dba89f86e9c0bd00 Mon Sep 17 00:00:00 2001 From: chenjiahe <763432473@qq.com> Date: 星期一, 25 四月 2022 17:45:21 +0800 Subject: [PATCH] 修复MYSQL查询语句不兼容问题 --- src/main/java/com/hx/mybatis/aes/springbean/InitMysqlData.java | 18 +++++++++++++----- 1 files changed, 13 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/hx/mybatis/aes/springbean/InitMysqlData.java b/src/main/java/com/hx/mybatis/aes/springbean/InitMysqlData.java index d1648b3..4a3283d 100644 --- a/src/main/java/com/hx/mybatis/aes/springbean/InitMysqlData.java +++ b/src/main/java/com/hx/mybatis/aes/springbean/InitMysqlData.java @@ -3,7 +3,7 @@ import com.gitee.sunchenbin.mybatis.actable.annotation.Column; import com.gitee.sunchenbin.mybatis.actable.annotation.Table; import com.hx.common.annotations.MysqlHexAes; -import com.hx.common.dao.CommonMapper; +import com.hx.common.dao.mapper.CommonMapper; import com.hx.common.service.CommonService; import com.hx.exception.ServiceException; import com.hx.mybatisTool.SqlSentence; @@ -76,10 +76,14 @@ for(String fieldName:fieldData.getEncrypFields()){ selectField.append(","+fieldName); } + pageNum = pageNum*pageSize; + sqlSentence.sqlSentence("SELECT "+selectField.toString()+" FROM "+fieldData.getTableName()+" LIMIT "+pageNum+","+pageSize,values); 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(); @@ -97,12 +101,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); - if(commonService.updateSentence(sqlSentence)!=1){ - throw new ServiceException("鏇存柊瓒呰繃1鏉★紝鏇存柊澶辫触锛�"); + 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鏉★紝鏇存柊澶辫触锛�"); + } } } -- Gitblit v1.8.0