MybatisPlus

是基于Mybatis框架基础上开发的增强型工具,旨在简化开发、提高效率

依赖:

MybatisPlus_第1张图片

接口继承BaseMapper<实体类名>

标准数据层CRUD功能

MybatisPlus_第2张图片

 MybatisPlus_第3张图片MybatisPlus_第4张图片MybatisPlus_第5张图片MybatisPlus_第6张图片

分页查询:

1.先定义一个 分页查询配置类(mybatisiplus拦截器)

MybatisPlus_第7张图片

2.分页查询:

 MybatisPlus_第8张图片

条件查询方式 

MyBatisPlus将书写复杂的SQL查询条件进行了封装,使用编程的形式完成查询条件的组合

MybatisPlus_第9张图片

MybatisPlus_第10张图片

 MybatisPlus_第11张图片

条件查询--null值处理

1.年龄上限:

MybatisPlus_第12张图片

2.MybatisPlus_第13张图片 

查询投影

MybatisPlus_第14张图片

 分组统计和总记录数

MybatisPlus_第15张图片

查询条件设定

MybatisPlus_第16张图片

 MybatisPlus_第17张图片

 范围查询:

MybatisPlus_第18张图片

模糊匹配:

MybatisPlus_第19张图片

lt 不带等号  le带等号  

更多查询条件设置参看https://mybatis.plus/guide/wrapper.html#abstractwrapper

字段映射与表名映射

1.表字段与编码属性设计不同步

 名称: @TableField
类型:属性注解
位置:模型类属性定义上方
作用:设置当前属性对应的数据库表中的字段关系
相关属性
value (默认):设置数据库表字段名称

 select:设置属性是否参与查询,此属性与select()映射配置不冲突

exist:设置属性在数据库字段中是否存在,默认为true,此属性无法与value合并使用

MybatisPlus_第20张图片MybatisPlus_第21张图片

MybatisPlus_第22张图片

@TableName

类注解

设置当前类对应与数据库关系

MybatisPlus_第23张图片

 value:设置数据库名称

Insert

id生成策略控制

  • 不同的表应用不同的id生成策略
  • 日志:自增(1,2,3,4,.....)
  • 购物订单:特殊规则 (FQ23948AK3843)
  • 外卖单:关联地区日期等信息 (19 94 20290314 34 91)
  • 关系表:可省略id
  • .....

全局设置

名称: @TableId
类型:属性注解
位置:模型类中用于表示主键的属性定义上方

作用:设置当前类中主键属性的生成策略
范例:

相关属性
value:设置数据库主键名称
type:设置主键属性的生成策略,值参照IdType枚举值

AUTO(0): 使用数据库id自增策略控制id生成

NONE(1): 不设置id生成策略

INPUT(2): 用户手工输入id

ASSIGN ID(3):雪花算法生成id (可兼容数值型与字符串型)

ASSIGN_UUID(4): 以UUID生成算法作为id生成策略

assign_id

表名的前缀:tablepr

MybatisPlus_第24张图片

Delete

MybatisPlus_第25张图片

 MybatisPlus_第26张图片

MybatisPlus_第27张图片

逻辑删除

删除操作业务问题:业务数据从数据库中丢弃

逻辑删除:为数据设置是否可用状态字段,删除时设置状态字段为不可用状态,数据保留在数据库中

1.数据库中添加逻辑删除标记字段

MybatisPlus_第28张图片

2. 实体类中添加对应字段,并设定当前字段为逻辑删除标记字段

MybatisPlus_第29张图片

3. 配置逻辑删除字面值

MybatisPlus_第30张图片

@test

void testDelete(){

userDao.deleteById(1L);

}

MybatisPlus_第31张图片 

Update

你可能感兴趣的:(mybatis)