MyBatis-Plus学习总结
发布人:shili8
发布时间:2024-12-25 01:17
阅读次数:0
**MyBatis-Plus学习总结**
**前言**
MyBatis-Plus是一个非常流行的Java持久层框架,基于MyBatis,它提供了很多便捷的功能,如自动填充、乐观锁、分页等。作为一名开发者,我花费了一些时间来学习和实践MyBatis-Plus,下面是我的学习总结。
**安装和配置**
首先,我们需要在项目中添加MyBatis-Plus的依赖:
xml<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.1</version> </dependency>
然后,我们需要配置MyBatis-Plus的核心类`Mapper`和`XMLMapper`:
java@Configurationpublic class MybatisPlusConfig { @Bean public MapperAnnotationBuilder mapperAnnotationBuilder() { return new MapperAnnotationBuilder(); } @Bean public XMLMapperBuilder xmlMapperBuilder() { return new XMLMapperBuilder(); } }
**基本使用**
下面是一个简单的实体类和mapper接口:
java// 实体类@Datapublic class User { private Long id; private String name; } // mapper接口@Mapperpublic interface UserMapper extends Mapper{ @Select("SELECT * FROM user WHERE id = #{id}") List selectById(Long id); }
我们可以使用`UserMapper`来进行CRUD操作:
java@Servicepublic class UserService { @Autowired private UserMapper userMapper; public ListselectAll() { return userMapper.selectList(null); } }
**自动填充**
MyBatis-Plus提供了一个非常方便的功能——自动填充。我们可以使用`@TableField`注解来指定字段的填充策略:
java// 实体类@Datapublic class User { @TableId(type = IdType.AUTO) private Long id; @TableField(fill = FieldFill.INSERT) private String name; }
在上面的例子中,我们使用`@TableId`注解来指定`id`字段的填充策略为自动增长,使用`@TableField`注解来指定`name`字段的填充策略为插入时填充。
**乐观锁**
MyBatis-Plus提供了一个非常方便的功能——乐观锁。我们可以使用`@Version`注解来指定版本号:
java// 实体类@Datapublic class User { @TableId(type = IdType.AUTO) private Long id; @TableField(fill = FieldFill.INSERT) private String name; @Version private Integer version; }
在上面的例子中,我们使用`@Version`注解来指定版本号。
**分页**
MyBatis-Plus提供了一个非常方便的功能——分页。我们可以使用`Page`类来进行分页:
java// mapper接口@Mapperpublic interface UserMapper extends Mapper{ @Select("SELECT * FROM user") List selectList(Page page); }
在上面的例子中,我们使用`Page`类来进行分页。
**总结**
MyBatis-Plus是一个非常流行的Java持久层框架,基于MyBatis,它提供了很多便捷的功能,如自动填充、乐观锁、分页等。通过本文的学习总结,你应该能够熟练地使用MyBatis-Plus来进行CRUD操作。
**参考**
* [MyBatis-Plus官方文档]( />* [MyBatis-Plus GitHub仓库](