MyBatisPlus简介
# MyBatisPlus简介
MyBatisPlus是基于Mybatis框架的基础上开发的增强型工具,旨在简化开发、提高效率
无侵入:只做增强不做变更,不会对现有工程产生影响
强大CRUD:内置通用Mapper,少量配置即可实现单表CRUD操作
支持Lambda:编写查询条件无需担心字段写错
支持主键自动生成
内置分页插件
...
# 依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.2</version>
</dependency>
1
2
3
4
5
2
3
4
5
# 变更
在Mybatis中,我们是这样写DAO类的
@Mapper
public interface UserDao{
@Select("select * from user;")
List<User> selectAll();
}
1
2
3
4
5
6
2
3
4
5
6
在Mybatis中,我们只需要改成
@Mapper
public interface UserDao extends BaseMapper<User> {
}
1
2
3
2
3
即可,你可以通过实例直接调用默认的方法,基本的增删改查都有。
表名要和实体类相同
# 小功能
先前我们写DAO的同时还需要有个对应的实体类,但写实体类时,老是得写变量的getter
、setter
和constructor
,属实麻烦。Lombok能解决这个问题
# 依赖
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.24</version>
<scope>provided</scope>
</dependency>
1
2
3
4
5
6
2
3
4
5
6
往后,我们不再需要手写繁琐的getter
、setter
和constructor
,我们的写法变成了:
@Getter
@Setter
@NoArgsConstructor
@ToString
public class User {
private int id;
private String username;
private String password;
}
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
可能有好事儿的金针菇要问了,我用IDEA快捷键ALT+Insert
和这差不多啊,你too young,too simple了
@Data
public class User {
private int id;
private String username;
private String password;
}
1
2
3
4
5
6
2
3
4
5
6
最简写法@Data
![[Pasted image 20220619005038.png]]