官方文档

https://baomidou.com/introduce/

入门案例

引入依赖

1
2
3
4
5
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.3.1</version>
</dependency>

日志相关配置

1
2
3
4
5
logging:
level:
com.itheima: debug # 设置项目包 com.itheima 及其子包的日志级别为 DEBUG(输出详细信息)
pattern:
dateformat: HH:mm:ss # 日志时间格式仅显示小时:分钟:秒(不显示毫秒和日期)

定义Mapper

首先,在启动类上面配置@MapperScan(“path/xx”),用于扫描持久层。

1
public interface UserMapper extends BaseMapper<User> {}

后面使用UserMapper时,User类相关的增删改查就无需自己实现单表CRUD了,直接调用就行了。

常见注解

MybatisPlus就是根据PO实体的信息来推断出表的信息,从而生成SQL的。默认情况下:

  • MybatisPlus会把PO实体的类名驼峰转下划线作为表名
  • MybatisPlus会把PO实体的所有变量名驼峰转下划线作为表的字段名,并根据变量类型推断字段类型
  • MybatisPlus会把名为id的字段作为主键

但很多情况下,默认的实现与实际场景不符,因此MybatisPlus提供了一些注解便于我们声明表信息:

  • @TableName
    • 描述:表名注解,标识实体类对应的表
    • 使用位置:实体类
  • @TableId
    • 描述:主键注解,标识实体类中的主键字段
    • 使用位置:实体类的主键字段
  • @TableField:普通字段注解

常见配置

1
2
3
4
5
6
# mybatis配置
mybatis-plus:
# 搜索指定包别名
typeAliasesPackage: com.jwwd
# 配置mapper的扫描,找到所有的mapper.xml映射文件
mapperLocations: classpath:mapper/**/*.xml

参考:

https://my.feishu.cn/wiki/PsyawI04ei2FQykqfcPcmd7Dnsc