私の命名戦略であるhibernateはデフォルトのEJB3NamingStrategyでした。フィールド名とテーブル名はキャメルケースになっていました。私はImprovedNamingStrategyに切り替えてsnakecaseを持っていました。EJB3NamingStrategyとImprovedNamingStrategyの外部キー命名
しかし、私の外部キーには、参照されるエンティティのプライマリキー名がその名前に含まれていません。
例:
TABLE1: EJB3NamingStrategy付きID 名
table2のフィールドは次のようになります。
表2: ID が
をtable1_idが、ImprovedNamingStrategyとtable2のフィールドがされます: テーブル2: id table1
ImprovedNamingStrategyで_idを使用する方法はありますか?私は両方の戦略のlogicalCollectionColumnNameメソッドが同一であるため、休止状態が異なる動作をする理由を理解していません。
パラメータは、すでに私はEJB3NamingStrategyを使用しますが、私はImprovedNamingStrategyを使用する場合、パラメータがそれを受信しない場合COLUMN_IDが含まれています。なぜか分からない。このメソッドは、コード内の他の場所から呼び出されます。 – Mike
ええ、あなたの書き込みは、私は正しい方法を見ていない。 id部分はコメントされています – Mike