6

私は冬眠するのが初めてです。HibernateでIDの開始値(たとえば100000)を指定し、コードでこの値からIDを自動インクリメントするにはどうすればよいですか。これに関するどんな助けもありがたいです。

@Id
@Column (name = "ID")
@GeneratedValue(generator="increment")
@GenericGenerator(name="increment", strategy = "increment")
private Integer ID;
4

3 に答える 3

4

これを試してください:http ://www.java2s.com/Code/Java/JPA/SetInitialValueOfTableGenerator.htm

JPAには、初期値を設定できる@TableGeneratorアノテーションがあります。

于 2013-01-25T16:55:48.257 に答える
3

私はこれを回避する方法を見つけました。ID 1000000の行をデータベースに手動で入力し、質問に記載されているコードを使用しました。次回このテーブルにレコードを追加するときは、最後の値として1000000を取り、この値から増分を開始します。ご協力いただきありがとうございます。

于 2013-02-20T16:40:15.553 に答える
0

最初に必要なIDが1000000の場合は、@ TableGeneratorを使用しますが、最初に必要なIDが1000001の場合は、@SequenceGeneratorを使用します。

この記事では、違いを非常に明確に説明しています。

http://www.objectdb.com/java/jpa/entity/generated

于 2017-09-03T22:35:39.540 に答える