Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Spring JPA for MySQL中设置@Id@GeneratedValue的初始值?_Java_Mysql_Spring_Jpa_Spring Data Jpa - Fatal编程技术网

Java 如何在Spring JPA for MySQL中设置@Id@GeneratedValue的初始值?

Java 如何在Spring JPA for MySQL中设置@Id@GeneratedValue的初始值?,java,mysql,spring,jpa,spring-data-jpa,Java,Mysql,Spring,Jpa,Spring Data Jpa,我不知道如何设置@GenerateValue@Id的初始值 我尝试过使用GenerationType.SEQUENCE,但在MySQL中不允许这样做。如何设置要用于@GenerateValue的初始值 同时使用AUTO和TABLE我仍然无法获得初始值,只能从1 多谢各位 使用自动编码 @Entity @Data @SequenceGenerator(name = "port_gen", sequenceName = "port_gen", initialValue = 4700) public

我不知道如何设置
@GenerateValue
@Id
的初始值

我尝试过使用
GenerationType.SEQUENCE
,但在
MySQL
中不允许这样做。如何设置要用于
@GenerateValue
的初始值

同时使用
AUTO
TABLE
我仍然无法获得初始值,只能从
1

多谢各位

使用自动编码

@Entity
@Data
@SequenceGenerator(name = "port_gen", sequenceName = "port_gen",  initialValue = 4700)
public class AppiumPort {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO, generator = "port_gen")
    private Long port;

    public AppiumPort() {

    }
}
使用表格编码

    @Entity
    @Data
    public class AppiumPort {

    @TableGenerator(name = "Address_Gen", table = "ID_GEN", pkColumnName = "GEN_NAME", valueColumnName = "GEN_VAL", pkColumnValue = "Addr_Gen", initialValue = 10000, allocationSize = 100)
    @Id
    @GeneratedValue(strategy = GenerationType.TABLE, generator = "Address_Gen")
    private int port;

    public AppiumPort() {

    }
}
**更新**

该问题与未设置hibernate.id.new_generator_mappings=true有关

Sring引导的Application.properties:

spring.jpa.properties.hibernate.id.new_generator_mappings=true

您可以尝试使用@TableGenerator(JPA有一个@TableGenerator注释,您可以在其中设置初始值)。initialValue可用于为值设定种子


这里的示例:

检查上面的内容,我也尝试了TABLE,但没有成功。它从1开始,即使我设置了初始值。在这种情况下,这是您的JPA提供程序中的一个错误,因此您应该告诉他们关于它的信息如果您自己设置db,您可以在您的mysql数据库中执行,如果它不是用JPA/orm生成的,它只是映射,我在MySQL数据库上尝试了表生成器,它工作得非常好。但我还没用过弹簧。