为了账号安全,请及时绑定邮箱和手机立即绑定

MyBatis-Plus入门

难度高级
时长 4小时 0分
学习人数
综合评分9.57
101人评价 查看评价
9.7 内容实用
9.4 简洁易懂
9.6 逻辑清晰
  • 配置日志


    查看全部
  • MP的xml写sql处理找不到statement的方法;Invalid bound statement (not found);;mapper文件夹要创建在resources目录下;
               #配置xml的存放路径,mapper包下的所有xml文件;在yml种写mapper-locations: classpath:/mapper/*.xml;

    查看全部
    0 采集 收起 来源:自定义sql

    2022-07-09

  • 通用Service

    基本方法:getOne
    批量操作:saveBatch、saveOrUpdateBatch
    链式调用:ChainWrappers 的 lambdaQuery查询、lambdaUpdate.update更新、lambdaUpdate.remove删除


    1、新建接口,继承MP提供的 IService<T> 接口。

    2、新建Service类,继承MP提供的 ServiceImpl 类。

    MP的 IService 提供的接口

    查看全部
    0 采集 收起 来源:通用service

    2022-06-24

  • 字段验证策略 FieldStrategy

    该策略约定了如何产出注入的SQL,涉及到 insert、update 语句,以及 wrapper 内部的 entity 属性生成的 where 条件。

    查看全部
    0 采集 收起 来源:基本配置

    2022-06-24

  • 主键策略,在IdType枚举类中定义。

    注:3.x.x版本定义修改为【AUTO、NONE、INPUT、ASSIGN_ID、ASSIGN_UUID】

    AUTO:自增

    NONE:该类型表示用户未设置主键类型

    INPUT:用户输入ID

     /** ID_WORKER、UUID、ID_WORKER_STR 三种类型只有插入ID为空,才自动填充,

    当用户输入值以输入为主 */

    ID_WORKER:全局唯一ID(idWorker)

    UUID:全局唯一ID(UUID)

    ID_WORKER_STR:全局唯一ID 字符串自增


    配置全局主键策略,注意:主键id局部策略优先级高于全局策略。

    mybatis-plus:

      global-config:

        db-config:

           id-type: auto


    修改主键id为自增ID。

    alter table user change column id id bigint(20) auto_increment;

    查看全部
    1 采集 收起 来源:主键策略

    2022-06-24

  • 实现ActionRecord模式

    1、实体类必须继承 Model<T> 对象

    2、必须是先对象的BaseMapper<T>接口

    查看全部
    0 采集 收起 来源:AR模式

    2022-06-23

  • 配置MyBatisPlus分页拦截器Pagination Interceptor

    MP3.x.几以上变成了 MybatisPlusInterceptor 分页拦截器

    https://baomidou.com/pages/2976a3/#spring

    /**
    * 新的分页插件, 一缓和二缓遵循mybatis的规则, 需要设置 MybatisConfiguration#useDeprecatedExecutor = false 避免缓存出现问题(该属性会在旧插件移除后一同移除)
    */

    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
       MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
       interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); // DbType.H2
       return interceptor;
    }

    查看全部
    0 采集 收起 来源:分页查询

    2022-06-23

  • 自定义SQL语句

    第一种方法:使用注解添加自定义语句,Wrapper添加构造条件

    第二种方法:使用配置Mybatis的XML文件自定义SQL语句,,Wrapper添加构造条件

    查看全部
    0 采集 收起 来源:自定义sql

    2022-06-23

  • 使用实体作为条件构造器构造方法的参数

    使用@TableField(condition = SqlCondition.LIKE) 表示该字段对应SQL语句是LIKE

    如果SqlCondition里面没有对应的SQL语句则可自定义

    @TableField(condition = "%s&lt;#{%s}")  // 第一个%s对应字段名, &lt 表示小于,#{%s} 对应输入的值

    查看全部
  • 排除非表字段的三种方式

    1、添加 transient 排除。

    2、添加 static 全局静态变量排除。

    3、添加 @TableField(exist = false) 排除非表中的字段,exist = false 表示不是表中存在的列字段。
    @TableField(exist = false)
    private String text_transient;

    查看全部
  • 常用注解

    1、指定表名,用于与数据库表一一对应,非驼峰命名对应的情况。

    @TableName("tp_user")

    class User {...}

    2、指定主键,用于数据库不是以id为主键的表。

    @TableId

    Long user_id;

    3、指定列名,用于数据库修改了列名,而不想修改定义的变量的情况。

    @TableField("real_name")

    String name;

    通用Mapper

    查看全部
    0 采集 收起 来源:常用注解

    2022-06-21

  • SSM传统变成模式

    查看全部
  • @TableName 表

    @TableId 主键

    @TableField 对应字段

    @TableField(exist=false) 排除字段

    查看全部
    0 采集 收起 来源:普通查询

    2022-05-04

  • http://img1.sycdn.imooc.com//626670450001452a12190612.jpg

    对比?

    查看全部
  • .selectOne

    查看全部

举报

0/150
提交
取消
课程须知
1、有Java开发基础,了解Lambda表达式; 2、至少会使用一种关系型数据库; 3、熟悉Maven; 4、熟悉SpringBoot; 5、最好熟悉MyBatis。
老师告诉你能学到什么?
1、了解MP的基本原理及框架特点; 2、掌握MP通用Mapper的使用; 3、掌握MP常用注解的使用; 4、掌握ActiveRecord模式的使用; 5、掌握MP多种主键策略的使用; 6、掌握MP常用配置的使用; 7、掌握MP通用Service的使用; 8、掌握MP在某些应用场景下的具体使用方式。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!