mybatis-plus条件构造器
allEq 全部eq(或个别isNull)
eq 等于 =
ne 不等于
gt 大于
ge 大于等于
lt 小于
le 小于等于
between 值1和值2
notBetween 值不是1和2
like 模糊查询
notLike 不查询此关键字
likeLeft 左模糊查询
likeRight 右模糊查询
isNull 值为空
isNotNull 值不为空
in 多个值查询
notIn 查询不包含里面的值
inSql 字段的多个值查询
notInSql 不包含此字段的多个值
groupBy 分组
orderByAsc asc排序
orderByDesc desc排序
orderBy 自定义按哪种方式排序
having 同sql语句having
or 拼接
and 嵌套
nested 正常嵌套 不带 AND 或者 OR
apply 拼接 sql
last 无视优化规则直接拼接到 sql 的最后
exists 拼接 EXISTS ( sql语句 )
notExists 拼接 NOT EXISTS ( sql语句 )
mybatis-plus常用注解
一.@TableName
实体类的名字是User,数据库表名是t_user
二.@TableId
1.指定主键列
2.value属性 实体类的属性名是 id,数据库的列名是 uid,此时使用 value 属性将属性名映射到列名
3.type属性
type属性用来定义主键策略IdType.ASSIGN_ID:使用基于雪花算法的策略生成数据id
IdType.AUTO:使用数据库的自增策略
4.全局配置:要想影响所有实体的配置,可以设置全局主键配置mybatis-plus.global-config.db-config.id-type=auto
三.@TableField
1.value属性 功能同TableId的value属性
四.@TableLogic
1.逻辑删除
物理删除:真实删除,将对应数据从数据库中删除,之后查询不到此条被删除的数据
逻辑删除:假删除,将对应数据中代表是否被删除字段的状态修改为“被删除状态”,之后在数据库中仍旧能看到此条数据记录
使用场景:可以进行数据恢复
分页插件
MyBatis Plus自带分页插件,只要简单的配置即可实现分页功能
添加配置类
@Configuration
@MapperScan("com.mybatis.mybatisplus.mapper")
public class MybatisPlusConfig {
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
return interceptor;
}
}
``` Page<User> pageParam = new Page<>(1,10);
userMapper.selectPage(pageParam, null);
System.out.println(pageParam);