网站开发设计大赛,北京seo招聘信息,手机企业wap网站,全球十大软件公司文章目录 前言一、主键生成策略概述二、示例三、Spring Boot 配置1. 方式一#xff1a;使用配置类2. 方式二#xff1a;通过 MybatisPlusPropertiesCustomizer 自定义 四、Spring 配置1. 方式一: XML 配置2. 方式二#xff1a;注解配置 总结 前言
在 MyBatis-Plus 中#… 文章目录 前言一、主键生成策略概述二、示例三、Spring Boot 配置1. 方式一使用配置类2. 方式二通过 MybatisPlusPropertiesCustomizer 自定义 四、Spring 配置1. 方式一: XML 配置2. 方式二注解配置 总结 前言
在 MyBatis-Plus 中主键生成策略是一个重要的概念它决定了如何为数据库表中的记录生成唯一的主键值。以下是关于主键生成策略的详细说明和配置方法。 一、主键生成策略概述
主键生成策略必须使用 INPUT 类型这意味着主键值需要由用户在插入数据时提供。MyBatis-Plus 支持在父类中定义 KeySequence 注解子类可以继承使用。
从版本 3.3.0 开始MyBatis-Plus 会自动识别主键类型因此不再需要手动指定主键类型。
MyBatis-Plus 内置支持多种数据库的主键生成策略包括
DB2KeyGeneratorH2KeyGeneratorKingbaseKeyGeneratorOracleKeyGeneratorPostgreKeyGenerator
如果内置的主键生成策略不能满足需求可以通过实现 IKeyGenerator 接口来扩展自定义的主键生成策略。
二、示例
下面是一个使用 KeySequence 注解的实体类示例
KeySequence(value SEQ_ORACLE_STRING_KEY, clazz String.class)
public class YourEntity {TableId(value ID_STR, type IdType.INPUT)private String idStr;// 其他字段和方法...
}在这个示例中YourEntity 类使用了 KeySequence 注解来指定 Oracle 数据库中的序列 SEQ_ORACLE_STRING_KEY 来生成主键值主键类型为 String。
三、Spring Boot 配置
1. 方式一使用配置类
在 Spring Boot 应用中可以通过配置类来设置主键生成策略
Bean
public IKeyGenerator keyGenerator() {return new H2KeyGenerator();
}2. 方式二通过 MybatisPlusPropertiesCustomizer 自定义
也可以通过 MybatisPlusPropertiesCustomizer 来自定义主键生成策略
Bean
public MybatisPlusPropertiesCustomizer plusPropertiesCustomizer() {return plusProperties - plusProperties.getGlobalConfig().getDbConfig().setKeyGenerator(new H2KeyGenerator());
}四、Spring 配置
1. 方式一: XML 配置
在传统的 Spring 应用中可以通过 XML 配置来设置主键生成策略
bean idglobalConfig classcom.baomidou.mybatisplus.core.config.GlobalConfigproperty namedbConfig refdbConfig/
/beanbean iddbConfig classcom.baomidou.mybatisplus.core.config.GlobalConfig.DbConfigproperty namekeyGenerator refkeyGenerator/
/beanbean idkeyGenerator classcom.baomidou.mybatisplus.extension.incrementer.H2KeyGenerator/2. 方式二注解配置
使用注解配置主键生成策略
Bean
public GlobalConfig globalConfig() {GlobalConfig conf new GlobalConfig();conf.setDbConfig(new GlobalConfig.DbConfig().setKeyGenerator(new H2KeyGenerator()));return conf;
}总结
回到顶部 以上配置方法可以根据实际项目需求选择合适的方式来设置主键生成策略。