Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.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 Hibernate@GeneratedValue(策略=GenerationType.AUTO)_Java_Hibernate - Fatal编程技术网

Java Hibernate@GeneratedValue(策略=GenerationType.AUTO)

Java Hibernate@GeneratedValue(策略=GenerationType.AUTO),java,hibernate,Java,Hibernate,那么,自动生成函数“@GeneratedValue(strategy=GenerationType.auto)”究竟是如何工作的呢 我是Hibernate的新手,继承了一个广泛使用is的项目。java对象具有: @Id @GeneratedValue(strategy = GenerationType.AUTO) @Column(name="ID") private Long id; 创建此类型的新实体时,将生成ID。后续新实体的ID增加了2。这到底是在哪里做的 此外,它在我们

那么,自动生成函数“@GeneratedValue(strategy=GenerationType.auto)”究竟是如何工作的呢

我是Hibernate的新手,继承了一个广泛使用is的项目。java对象具有:

@Id
@GeneratedValue(strategy = GenerationType.AUTO)    
@Column(name="ID")    
private Long id;
创建此类型的新实体时,将生成ID。后续新实体的ID增加了2。这到底是在哪里做的

此外,它在我们的开发和测试环境中生成不同的ID,因此它是特定于数据库的。是否有“进料器”表/视图/序列或其他内容

例如,如果我希望生成的ID开始为100000,XXX,而不是10,XXX,并增加100,我将如何进行更改


请帮个忙。提前感谢。

如前所述,这由您的Oracle数据库管理。如果id的增量为2,则是因为有人将其设置为2。 在oracle中,SET INCREMENT BY将指定标识列上的增量

要更改种子值,请使用RESTART WITH

ALTER TABLE mytable ALTER COLUMN id SET INCREMENT BY 100    
ALTER TABLE mytable ALTER COLUMN id RESTART WITH 100000000

Oracle针对alter table的文档:

这完全取决于该数据库。如何做到这一点?我使用的是Oracle 10g签出。好的,使用的是hibernate_序列。谢谢