私は異なるフォーラムから検索していましたが、別の解決策を試しましたが、私の問題の正解をまだ見つけることができません。hibernateはmysqlテーブルの自動インクリメント制約を生成しません
私は自分のエンティティをマッピングするためにhibernate4アノテーションを使用しています。すべて正常に動作しますが、テーブルがmysqlでhibernateを使用して作成されている場合、自動インクリメントキーは検出されません。
iは下記たコード:
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(unique = true, nullable = false)
private int responseId;
はまた、IDが自動的に行に割り当てられ、絶対にうまく動作Hibernateで
@Id
@GenericGenerator(name="generator", strategy="increment")
@GeneratedValue(generator="generator")
private int responseId;
を試みた私が、MySQLのテーブルではない自動インクリメント制約がありません。フィールドをAIとして手動でマークする必要があります。これは、テスト用のレコードを手動で挿入するか、テーブルのjdbcステートメントを使用するときに問題になります。 Plzは、休止状態がそれぞれの列にAutoIncrement Contraintを課すのを妨げている設定で何が不足しているかを教えてくれます。
注釈がテーブルを作成するに作るのですか?通常は逆の方法で行います。 – kommradHomer
クラスとリレーションシップを作成し、hibernateプロパティhibernate.hbm2ddl.autoを設定してテーブルを生成します。 – maimoona