2011-06-16 138 views
2

我有像下面的實體,但不能取消爲什麼當我添加新的記錄,生成的ID是50,51,52 ...如果select nextval('seq_text');返回1523,1524 ...數據庫:PostgreSQL的。 有問題嗎?休眠:@GeneratedValue不起作用?

@Entity 
@SequenceGenerator(name = "seq_text", sequenceName = "seq_text") 
public class Text { 

    @Id 
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "seq_text") 
    private Integer id; 
    ... 
}  
+0

你是什麼seq_text序列的定義是什麼?你有緩存參數指定? – Olaf 2011-06-16 21:01:21

+0

在db上檢查高速緩存 - > 1 – marioosh 2011-06-17 04:12:34

回答

4

看來您使用的聲明是使用HiLo生成器。 這裏是一個討論和解決方法: http://community.jboss.org/thread/107819?tstart=0

提出的解決方法是

@SequenceGenerator(name = "seq_text", sequenceName = "seq_text", allocationSize=1) 
+0

你說得對。現在爲我工作:)謝謝。 – marioosh 2011-06-17 04:09:32