mybatisplus擴展BaseMapper的方法(InsertBatchSomeColumn及AlwaysUpdateSomeColumnById)


//* <li> 例1: t -> !t.isLogicDelete() , 表示不要邏輯刪除字段 </li>
//* <li> 例2: t -> !t.getProperty().equals("version") , 表示不要字段名為 version 的字段 </li>
//* <li> 例3: t -> t.getFieldFill() != FieldFill.UPDATE) , 表示不要填充策略為 UPDATE 的字段 </li>
public class NormalSqlInjector extends DefaultSqlInjector {

@Override
public List<AbstractMethod> getMethodList(Class<?> mapperClass) {
List<AbstractMethod> methodList = super.getMethodList(mapperClass);
methodList.add(new InsertBatchSomeColumn(i -> i.getFieldFill() != FieldFill.UPDATE));
methodList.add(new AlwaysUpdateSomeColumnById((i -> i.getFieldFill() != FieldFill.INSERT)));
return methodList;
}
}

-------------------------------------------------------

public interface MyBaseMapper<T> extends BaseMapper<T> {

int insertBatchSomeColumn(List<T> entityList);

int alwaysUpdateSomeColumnById(@Param(Constants.ENTITY) T entity);
}

----------------------------------

@Bean
public ISqlInjector sqlInjector() {
return new NormalSqlInjector();
}

--------------------------------









免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM