专业编程教程与实战项目分享平台

网站首页 > 技术文章 正文

Springboot集成Mybatis ID生成策略注解 @GeneratedValue

ins518 2024-10-27 12:27:28 技术文章 13 ℃ 0 评论

@GeneratedValue 用于注解生成策略,内有strategy方法。默认情况下,spring会自动选择一个最适合底层数据库的主键生成策略:我这里 mysql 对应自增长auto increment

@Target({ElementType.METHOD, ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
public @interface GeneratedValue {
    GenerationType strategy() default GenerationType.AUTO;

    String generator() default "";
}


在javax.persistence.GenerationType中有以下几种策略:

package javax.persistence;

public enum GenerationType {
    TABLE,        ---通过表产生主键,框架借由表模拟序列产生主键,使用该策略可以使应用更易于数据库移植
    SEQUENCE, ---通过序列产生主键,通过@SequenceGenerator 注解指定序列名,MySql不支持这种方式
    IDENTITY,     ---采用数据库ID自增长的方式来自增主键字段,Oracle 不支持这种方式
    AUTO;          --- JPA自动选择合适的策略,是默认选项;

    private GenerationType() {
    }
}

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表