java-SpringBoot的MyBatis-Plus基础使用教程

文章 , 技术分享
395 0

简介:

Batis-Plus 是 MyBatis 的增强工具包,提供了很多实用的功能,如分页、条件构造器、自动填充等。下面是 Batis-Plus 常用的增删改查语法使用教程。

注意:以下示例代码是基于 Spring Boot + MyBatis-Plus 的环境下编写的。

对数据的增删改查

增加数据

使用 Batis-Plus 插入数据非常简单,只需要创建一个实体对象并调用 insert 方法即可。例如:

User user = new User();
user.setName("Tom");
user.setAge(18);
user.setAddress("Beijing");
userMapper.insert(user);

这样就可以向 user 表中插入一条数据。

删除数据

使用 Batis-Plus 删除数据也非常简单,只需要指定一个条件即可。例如:

userMapper.delete(new QueryWrapper().eq("name", "Tom"));

这样就可以删除 name 为 "Tom" 的数据。

更新数据

使用 Batis-Plus 更新数据也非常简单,只需要创建一个实体对象并调用 updateById 方法即可。例如:

User user = new User();
user.setId(1);
user.setName("Jerry");
userMapper.updateById(user);

这样就可以更新 id 为 1 的数据的 name 字段为 "Jerry"。

查询数据

使用 Batis-Plus 查询数据也非常简单,只需要指定一个条件即可。例如:

List<User> userList = userMapper.selectList(new QueryWrapper().eq("name", "Jerry"));

这样就可以查询 name 为 "Jerry" 的数据,并将结果保存在 userList 中。

同时,Batis-Plus 还提供了很多实用的查询方法,例如分页查询、排序查询等等,可以根据具体需求使用。

高级查询方法

分页查询

Batis-Plus 提供了分页插件 PaginationInterceptor,可以很方便地实现分页查询。例如:

Page<User> page = new Page<>(1, 10); // 查询第 1 页,每页显示 10 条记录
QueryWrapper<User> wrapper = new QueryWrapper<User>().eq("age", 18);
IPage<User> userPage = userMapper.selectPage(page, wrapper);
List<User> userList = userPage.getRecords();

这样就可以查询 age 为 18 的数据,并将第 1 页的结果保存在 userList 中。

排序查询

Batis-Plus 也提供了排序查询的方法,可以根据指定的字段进行升序或降序排序。例如:

QueryWrapper<User> wrapper = new QueryWrapper<User>().orderByAsc("age");
List<User> userList = userMapper.selectList(wrapper);

这样就可以按照 age 字段进行升序排序查询。

条件构造器

Batis-Plus 还提供了条件构造器 QueryWrapper,可以通过链式调用的方式来构建查询条件。例如:

QueryWrapper<User> wrapper = new QueryWrapper<User>()
        .eq("age", 18)
        .like("name", "Tom")
        .orderByDesc("create_time")
        .select("id", "name", "age");
List<User> userList = userMapper.selectList(wrapper);

这样就可以构建一个查询条件,查询 age 为 18,name 包含 "Tom" 的数据,并按照 create_time 字段进行降序排序,查询结果只包含 id、name、age 三个字段。

自动填充

Batis-Plus 还提供了自动填充功能,可以在插入或更新数据时自动填充指定的字段。例如:

@TableField(fill = FieldFill.INSERT)
private Date createTime;

@TableField(fill = FieldFill.UPDATE)
private Date updateTime;

@TableField(fill = FieldFill.INSERT_UPDATE)
private String operator;

这样就可以在插入数据时自动填充 createTime 字段,在更新数据时自动填充 updateTime 字段,在插入或更新数据时自动填充 operator 字段。

以上是 Batis-Plus 常用的增删改查语法使用教程,可以根据具体需求使用不同的方法来操作数据库。

最后更新 2023-07-15
评论 ( 0 )
OωO
隐私评论