MybatisPlus快速入门

2023-12-29 09:32:33


官方文档: MybatisPlus

1.引入MybatisPlus的起步依赖

MybatisPlus官方提供了starter,其中集成了Mybatis和MybatisPlus的所有功能,并且实现了自动装配效果。
因此我们可以用MybatisPlus的starter代替Mybatis的starter:

<dependency>
	<groupId>com.bamidou</groupId>
	<artifactId>mybatis-plus-boot-starter</artifactId>
	<version>3.5.3.1</version>
</dependency>

2.定义Mapper

自定义的Mapper继承MybatisPlus提供的BaseMapper接口:

//BaseMapper的泛型要写实体类的类型
//MybatisPlus通过扫描实体类,并基于反射获取实体类信息作为数据库表信息
public interface UserMapper extends BaseMapper<User> {
}

直接使用父接口BaseMapper里面的CRUD(增删改查)方法即可

文件目录结构
在这里插入图片描述

3.常见注解

因为MybatisPlus通过扫描实体类,并基于反射获取实体类信息作为数据库表信息
如图:
在这里插入图片描述
相关约定:

  • 类名驼峰转下划线作为表名
  • 名为id的字段作为主键
  • 变量名驼峰转下划线作为表的字段名

MybatisPlus比较常用的几个注解如下:

  • @TableName:用来指定表名
  • @TableId:用来指定表中的主键字段信息
  • @TableField:用来指定表中的普通字段信息

IdType枚举:

  • AUTO:数据库自增长
  • INPUT:通过set方法自行输入
  • ASSIGN_ID:分配ID,默认使用雪花算法生成id

使用@TableField的常见场景:

  • 成员变量名与数据库字段名不一致
  • 成员变量名以is开头,且是布尔值(建议POJO类中布尔类型的变量,都不要加is)
  • 成员变量名与数据库关键字冲突(使用反引号)
  • 成员变量不是数据库字段

如图:

在这里插入图片描述

4.常见配置

MybatisPlus的配置项继承了Mybatis原生配置和一些自己特有的配置。如图:
在这里插入图片描述
Mapper.xml文件:MybatisPlus非常适合简化单表的CRUD,多表更多的时候需要手写sql语句到此文化中

作用如下:

  1. 存放SQL语句
  2. 映射关系配置
  3. 参数传递(Mapper.xml文件中可以定义SQL语句中的参数映射关系。通过参数映射,可以将Java对象的属性值传递给SQL语句中的参数,实现数据的传递和操作)
  4. 结果映射(Mapper.xml文件中可以配置SQL查询结果的映射关系,将数据库查询结果映射到Java对象,以便在Java代码中直接使用)

上图的cache-enabled属性设置为false表示禁用了二级缓存。

二级缓存是指将查询结果缓存在内存中,以便在后续查询中可以直接从缓存中获取数据,而不必再次访问数据库。禁用二级缓存意味着每次查询都会直接访问数据库,不会使用缓存进行优化,会导致性能下降

更多配置见官方文档:使用配置

文章来源:https://blog.csdn.net/2301_78179333/article/details/135159178
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。