MyBatis-Plus 为简化开发而生1. 快速上手1.1 准备工作1.2 编码创建实体类 UserInfo编写Mapper接口类MyBatisPlus提供了一个基础的BaseMapper接口已经实现了单标的CRUD我们自定义的Mapper只需要继承这个BaseMapper无需自己实现单表CRUD1.3 CRUD测试2. Mybatis-Plus 复杂操作2.1 常见注解Mybatis是如何知道要操作那张表表中的哪些字段UserInfoMapper 在继承 BaseMapper 时指定了一个泛型这个UserInfo就是与数据表相对应的实体类Mybatis-Plus 会根据这个实体类来推断表的信息默认情况如下1. 表名2. 字段3. 主键默认是id2.1.1 TableName可以通过TableName来表示实体类对应的表2.1.2 TableField2.1.3 Tabled2.2 条件构造器入门程序里的使用都是简单的CRUD在实际的应用场景中我们还需要使用更复杂的操作Mybatis-Plus 也提供了相应的支持Mybatis-Plus 提供了一套强大的条件构造器Wrapper用于构建复杂的查询条件条件构造器 | MyBatis-Plus2.2.1 QueryWrapperQueryWrapper并不只是用于查询语句无论是修改、删除、查询都可以使用QueryWrapper来构建查询条件查询SELECT id,username,password,age FROM user_info WHERE age 18 AND username like %min%更新UPDATE user_info SET delete_flag? WHERE age 20删除DELETE FROM user_info WHERE age 42.2.2 UpdateWrapper对于更新我们可以直接使用 UpdateWrapper 在不创建实体对象的情况下直接设置更新字段和条件UPDATE user_info SET delete_flag0, age5 WHERE id IN (1,2,3)2.2.3 LamdbaQueryWrapperQueryWrapper 和 UpdateWrapper 都存在一个问题就是需要写死字段名如果字段名发生变更可能会因为测试不到位造成错误Mybatis-Plus 提供了一种基于Lambda表达式的条件和构造器它通过Lambda 表达式引用实体类属性从而避免了硬编码字段名也提高了代码的可读性和可维护性2.2.4 LambdaUpdateWrapper2.3 自定义SQL在实际开发中Mybatis-Plus提供的操作不能满足实际需求Mybatis-Plus 也提供了自定义SQL功能我们可以利用Wrapper构造查询条件再结合Mapper编写SQL
MyBatis-Plus 使用
发布时间:2026/5/26 13:22:22
MyBatis-Plus 为简化开发而生1. 快速上手1.1 准备工作1.2 编码创建实体类 UserInfo编写Mapper接口类MyBatisPlus提供了一个基础的BaseMapper接口已经实现了单标的CRUD我们自定义的Mapper只需要继承这个BaseMapper无需自己实现单表CRUD1.3 CRUD测试2. Mybatis-Plus 复杂操作2.1 常见注解Mybatis是如何知道要操作那张表表中的哪些字段UserInfoMapper 在继承 BaseMapper 时指定了一个泛型这个UserInfo就是与数据表相对应的实体类Mybatis-Plus 会根据这个实体类来推断表的信息默认情况如下1. 表名2. 字段3. 主键默认是id2.1.1 TableName可以通过TableName来表示实体类对应的表2.1.2 TableField2.1.3 Tabled2.2 条件构造器入门程序里的使用都是简单的CRUD在实际的应用场景中我们还需要使用更复杂的操作Mybatis-Plus 也提供了相应的支持Mybatis-Plus 提供了一套强大的条件构造器Wrapper用于构建复杂的查询条件条件构造器 | MyBatis-Plus2.2.1 QueryWrapperQueryWrapper并不只是用于查询语句无论是修改、删除、查询都可以使用QueryWrapper来构建查询条件查询SELECT id,username,password,age FROM user_info WHERE age 18 AND username like %min%更新UPDATE user_info SET delete_flag? WHERE age 20删除DELETE FROM user_info WHERE age 42.2.2 UpdateWrapper对于更新我们可以直接使用 UpdateWrapper 在不创建实体对象的情况下直接设置更新字段和条件UPDATE user_info SET delete_flag0, age5 WHERE id IN (1,2,3)2.2.3 LamdbaQueryWrapperQueryWrapper 和 UpdateWrapper 都存在一个问题就是需要写死字段名如果字段名发生变更可能会因为测试不到位造成错误Mybatis-Plus 提供了一种基于Lambda表达式的条件和构造器它通过Lambda 表达式引用实体类属性从而避免了硬编码字段名也提高了代码的可读性和可维护性2.2.4 LambdaUpdateWrapper2.3 自定义SQL在实际开发中Mybatis-Plus提供的操作不能满足实际需求Mybatis-Plus 也提供了自定义SQL功能我们可以利用Wrapper构造查询条件再结合Mapper编写SQL