对数据保存做一个判定,如果模型设置id,则不复盖模型原有的id

This commit is contained in:
Chopper 2021-06-07 10:12:42 +08:00
parent 9fedc25f3f
commit 886ea29c6d
2 changed files with 15 additions and 13 deletions

View File

@ -29,7 +29,10 @@ public class MyMetaObjectHandler implements MetaObjectHandler {
this.setFieldValByName("deleteFlag", false, metaObject); this.setFieldValByName("deleteFlag", false, metaObject);
} }
if (metaObject.hasGetter("id")) { if (metaObject.hasGetter("id")) {
this.setFieldValByName("id", String.valueOf(SnowFlake.getId()), metaObject); //如果已经配置id则不再写入
if (metaObject.getValue("id") == null) {
this.setFieldValByName("id", String.valueOf(SnowFlake.getId()), metaObject);
}
} }
} }

View File

@ -1,32 +1,31 @@
package cn.lili.base.mybatisplus; package cn.lili.base.mybatisplus;
import com.baomidou.mybatisplus.core.parser.ISqlParser;
import com.baomidou.mybatisplus.extension.parsers.BlockAttackSqlParser;
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor; import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import org.mybatis.spring.annotation.MapperScan; import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import java.util.ArrayList;
import java.util.List;
/** /**
* @author Chopper * @author Chopper
*/ */
@Configuration @Configuration
@MapperScan({"cn.lili.modules.*.*.mapper","cn.lili.modules.*.mapper"}) @MapperScan({"cn.lili.modules.*.*.mapper", "cn.lili.modules.*.mapper"})
public class MybatisPlusConfig { public class MybatisPlusConfig {
/** /**
* 分页插件自动识别数据库类型 * 分页插件自动识别数据库类型
*/ */
@Bean @Bean
public PaginationInterceptor paginationInterceptor() { public PaginationInterceptor paginationInterceptor() {
PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
List<ISqlParser> sqlParserList = new ArrayList<>(); return new PaginationInterceptor();
// 攻击 SQL 阻断解析器加入解析链
sqlParserList.add(new BlockAttackSqlParser()); //阻断解析器测试环境使用
paginationInterceptor.setSqlParserList(sqlParserList); // PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
return paginationInterceptor; //
// List<ISqlParser> sqlParserList = new ArrayList<>();
// // 攻击 SQL 阻断解析器加入解析链
// sqlParserList.add(new BlockAttackSqlParser());
// paginationInterceptor.setSqlParserList(sqlParserList);
// return paginationInterceptor;
} }
} }