在 MyBatis-Plus 中,主键生成策略是一个重要的概念,它决定了如何为数据库表中的记录生成唯一的主键值。以下是关于主键生成策略的详细说明和配置方法。
主键生成策略概述
主键生成策略必须使用 INPUT
类型,这意味着主键值需要由用户在插入数据时提供。MyBatis-Plus 支持在父类中定义 @KeySequence
注解,子类可以继承使用。
从版本 3.3.0 开始,MyBatis-Plus 会自动识别主键类型,因此不再需要手动指定主键类型。
MyBatis-Plus 内置支持多种数据库的主键生成策略,包括:
- DB2KeyGenerator
- H2KeyGenerator
- KingbaseKeyGenerator
- OracleKeyGenerator
- PostgreKeyGenerator
如果内置的主键生成策略不能满足需求,可以通过实现 IKeyGenerator
接口来扩展自定义的主键生成策略。
示例
下面是一个使用 @KeySequence
注解的实体类示例:
在这个示例中,YourEntity
类使用了 @KeySequence
注解来指定 Oracle 数据库中的序列 SEQ_ORACLE_STRING_KEY
来生成主键值,主键类型为 String
。
Spring Boot 配置
方式一:使用配置类
在 Spring Boot 应用中,可以通过配置类来设置主键生成策略:
方式二:通过 MybatisPlusPropertiesCustomizer 自定义
也可以通过 MybatisPlusPropertiesCustomizer
来自定义主键生成策略:
Spring 配置
方式一: XML 配置
在传统的 Spring 应用中,可以通过 XML 配置来设置主键生成策略:
方式二:注解配置
使用注解配置主键生成策略:
以上配置方法可以根据实际项目需求选择合适的方式来设置主键生成策略。
© 2016-2024 Baomidou™. All Rights Reserved.
Power by Astro Starlight |
Sponsored by JetBrains
渝ICP备2021000141号-1 |
渝公网安备50011302222097