1、简介
- MyBatis-Plus 是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
- MyBatis-Plus 提供了强大的条件构造器(Wrapper),用于构建复杂的 SQL 查询条件,使得我们不必手写繁琐的 SQL 语句。
- 这些方法主要定义在
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
和com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
等类中。
2、常用方法
2.1QueryWrapper(查询条件构造器)
- eq(String column, Object val): 等于 =
- ne(String column, Object val): 不等于 <>
- gt(String column, Object val): 大于 >
- ge(String column, Object val): 大于等于 >=
- lt(String column, Object val): 小于 <
- le(String column, Object val): 小于等于 <=
- between(String column, Object val1, Object val2): BETWEEN 值1 AND 值2
- notBetween(String column, Object val1, Object val2): NOT BETWEEN 值1 AND 值2
- like(String column, Object val): LIKE '%值%'
- notLike(String column, Object val): NOT LIKE '%值%'
- in(String column, Collection<?> value): IN (value.get(0), value.get(1), ...)
- notIn(String column, Collection<?> value): NOT IN (value.get(0), value.get(1), ...)
- isNull(String column): 字段 IS NULL
- isNotNull(String column): 字段 IS NOT NULL
- groupBy(String... columns): GROUP BY 字段,...
- having(String sqlHaving, Object... params): HAVING (sqlHaving)
- orderByAsc(String... columns): ORDER BY 字段, ... ASC
- orderByDesc(String... columns): ORDER BY 字段, ... DESC
- orderBy(boolean asc, String... columns): 排序,true 升序,false 降序
- last(String sqlLast): 将 sqlLast 拼接到 sql 的最后,用于覆盖、或追加原 sql 条件
- or(): 嵌套 OR (注意:调用 or 表示紧接着的下一个条件与前一个条件是 OR 关系)
- nested(Consumer<QueryWrapper<T>> consumer): 提供一个嵌套的 Wrapper 来构造更复杂的条件
2.2UpdateWrapper(更新条件构造器)
- set(String column, Object val): 设置要更新的字段值
- set(Map<String, Object> map): 设置多个字段的值