Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.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
Hibernate 在Oracle、MS SQL和H2中使用TableGenerator休眠重复ID_Hibernate_Jpa_Jboss_Jta - Fatal编程技术网

Hibernate 在Oracle、MS SQL和H2中使用TableGenerator休眠重复ID

Hibernate 在Oracle、MS SQL和H2中使用TableGenerator休眠重复ID,hibernate,jpa,jboss,jta,Hibernate,Jpa,Jboss,Jta,我遇到了一个奇怪的行为,在一个长事务中,我得到了重复的ID 我正在使用JBoss7.2.0和Hibernate4.0.1.Final 我尝试了很多解决方案,但都没有成功:在persist()之后使用flush()并在insert周围使用嵌入式事务(new) 问候 @TableGenerator( table = "SEQUENCE_TABLE", name = "seq1", pkColumnName = "seq_name", valueColumnName = "seq_val", pkCo

我遇到了一个奇怪的行为,在一个长事务中,我得到了重复的ID

我正在使用JBoss7.2.0和Hibernate4.0.1.Final

我尝试了很多解决方案,但都没有成功:在persist()之后使用flush()并在insert周围使用嵌入式事务(new)

问候

@TableGenerator(
table = "SEQUENCE_TABLE", name = "seq1", pkColumnName = "seq_name",
valueColumnName = "seq_val", pkColumnValue = "seq1", allocationSize = 1,
initialValue = 1001)
@Id
@GeneratedValue(
strategy = GenerationType.TABLE, generator = "seq1")
public Long getId() {
return super.getId();
}
在基类中(其唯一目的是定义通用属性,如id、版本、行修改时间戳等):


您能否在基类中显示
getId()
方法的代码以及
id
字段的声明?该id声明为“public Long id”,而“super.getId()”是“@Transient public Long getId(){return id;}”请将其添加到问题文本中,我在前面的注释中看不到您的代码。
public Long id;

@Transient
public Long getId() {
 return id;
}