27

問題があり@SequenceGeneratorます:

@SequenceGenerator(name="pk_user_id", sequenceName="seq_user_id", allocationSize=1)
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="pk_user_id")

アプリケーションが起動すると、次の警告が表示されます。

WARN 7388 --- [ main] org.hibernate.orm.deprecation : HHH90000014: 非推奨の [org.hibernate.id.SequenceHiLoGenerator] シーケンスベースの ID ジェネレーターの使用が見つかりました。代わりに org.hibernate.id.enhanced.SequenceStyleGenerator を使用してください。詳細については、Hibernate ドメイン モデル マッピング ガイドを参照してください。

非推奨のコードを新しいコードに置き換える方法を見つけようとしましたが、解決策が見つかりません。

4

1 に答える 1

46

警告メッセージと Hibernate のドキュメント ( Hibernate deprecated list )によると、 SequenceStyleGeneratorを使用する必要があります。または、@GenericGeneratorを使用してジェネレーター戦略を指定することをお勧めします。

典型的な使用例を次に示します。

@GenericGenerator(
        name = "wikiSequenceGenerator",
        strategy = "org.hibernate.id.enhanced.SequenceStyleGenerator",
        parameters = {
                @Parameter(name = "sequence_name", value = "WIKI_SEQUENCE"),
                @Parameter(name = "initial_value", value = "1000"),
                @Parameter(name = "increment_size", value = "1")
        }
)
@Id
@GeneratedValue(generator = "wikiSequenceGenerator")
于 2016-10-13T01:58:08.977 に答える