mybatisPlus 实现条件查询总结
官网上没查到,看源码看到的,总结一下,方便大家,慢慢总结,不断更新。
1、mybatisPlus_eq 实现类似
<if test="a!=null"> AND a = #{a} </if>
Wrapper wrapper= Condition.create().eq(VerifyUtil.isNNull(sysOffice.getParentId()),"PARENT_ID",sysOffice.getParentId());VerifyUtil.isNNull(sysOffice.getParentId()),"PARENT_ID",sysOffice.getParentId());
2、like
like(boolean condition, String column, String value) like(String column, String value) like(boolean condition, String column, String value, SqlLike type) like(String column, String value, SqlLike type)
condition 是一些条件,符合才可加上你的sql column 为 数据库属性 value 为 你传入的值 type 为 % 拼在那边: SqlLike 为枚举类 LEFT("left", "左边%"), RIGHT("right", "右边%"), CUSTOM("custom", "定制"), DEFAULT("default", "两边%");
3、addFilterIfNeed
如果前置条件为true,则 加上 后置位的那些sql
public Wrapper<T> addFilterIfNeed(boolean need, String sqlWhere, Object... params) { return need?this.where(sqlWhere, params):this; }
eg
wrapper = Condition.create() .addFilterIfNeed(VerifyUtil.isNNull(setmealId)," ccompany.ID in (SELECT COMPANY_ID from base_setmeal_company where SETMEAL_ID = "+ setmealId +") ");
4、orderAsc 或者 orderDesc
public Wrapper<T> orderAsc(Collection<String> columns) { return this.orderBy(true, columns, true); } public Wrapper<T> orderDesc(Collection<String> columns) { return this.orderBy(true, columns, false); }
参数是Collection,可以用set 如
Set<String> set = new HashSet<>(); set.add("SORT"); Wrapper wrapper= Condition.create() .orderAsc(set);
上一篇:
IDEA上Java项目控制台中文乱码