MyBatis-Plus

发布时间 2023-07-05 21:49:15作者: 梦浅

*MyBatis-Plus(简称MP)是基于MyBatis框架基础上开发的增强型工具,旨在简化开发、提高效率

 

  *开发方式

    *基于MyBatis使用MyBatisPlus

    *基于Spring使用MyBatisPlus

    *基于SpringBoot使用MyBatisPlus

 

手动添加MP起步依赖

 

  注意事项

    由于MP并未被收录到idea的系统内置配置,无法直接选择加入

定义数据接口,继承BaseMapper<User>

  直接可CURD

 

MyBtais特性

  *无侵入︰只做增强不做改变,不会对现有工程产生影响

  *强大的 CRUD操作:内置通用Mapper,少量配置即可实现单表CRUD操作

  *支持Lambda:编写查询条件无需担心字段写错

  *支持主键自动生成

  *内置分页插件......

 

标准数据层开发

  *标准数据层CRUD功能

    

  *分页功能

   1.设置分页拦截器作为Spring管理bean

      

 

  开启日志

      

  

  2.执行分页查询

      

 

DQL编程控制

  *条件查询方式

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

    条件查询----设置查询条件

      *格式一:常规格式

            

      *格式二:链式编程格式

            

      *格式三:lambda格式(推荐)

            

      *格式四:lambda(推荐)

 

       

    条件查询----组合查询条件

      *并且(and)

            

      *或者(or)

 

            

 

    条件查询----null值处理

      *if语句控制条件追加

            

 

   查询投影

      *查询结果包含模型类中部分属性

            

      *查询结果包含模型类中未定义的属性

            

   

   查询条件

    *范围匹配(> 、 = 、 between)

    *模糊匹配( like)

    *空判定( null)

    *包含性匹配( in)

    *分组(group )

    *排序( order)

    *.....

    

      *用户登录(eq匹配)

            

      *购物设定价格区间、户籍设定年龄区间(le ge匹配 或 between匹配)

            

      *查信息,搜索新闻(非全文检索版:like匹配)

            

      *统计报表(分组查询聚合函数)

            

   字段映射与表名映射

      *名称:@TableField

      *类型:属性注解

      *位置:模型类属性定义上方

      *作用:设置当前属性对应的数据库表中的字段关系

      *范例:

            

      *相关属性

        value(默认):设置数据库表字段名称

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

 

          *名称:@TableField

      *类型:属性注解

      *位置:模型类属性定义上方

      *作用:设置当前属性对应的数据库表中的字段关系

      *范例:

            

      *相关属性:

        value:设置数据库表字段名称

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

 

          *名称:@TableName

          *类型:类注解

          *位置:模型类定义上方

          *作用:设置当前类对应的数据库表关系

          *范例:

            

      *相关属性:

        value:设置数据库表名称

 

DML编程控制

  Insert

    id生成策略控制

      *不同的表应用不同的id生成策略

        *日志:自增(1,2,3,4,.......)

      *购物订单:特殊规则(FQ23948AK3843)

      *外卖单:关联地区日期等信息(10 04 20200314 34 91)

      *关系表:可省略id

      *......

  Delete

  Update

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

*

  *查询投影

  *查询条件设定

  *字段映射与表名

  *