問題はこれです。私は汎用フレームワークを拡張して特定のプロジェクトに適用しています。フレームワークは Spring と Hibernate で動作します。ここではGenericClientとSpecificClientの 2 つのクラスがあり、どちらもエンティティであり、SpecificClientはGenericClientから継承されます。
GenericClientはフレームワークの一部であり、これを変更することはできません。これは、このクラス@Inheritance(strategy = InheritanceType.JOINED)
が使用できる唯一の継承型を宣言していないInheritanceType.SINGLE_TABLE
ためです。これは、これが注釈の既定値であるためです。
現在、私のコードは、継承ツリーのルートではありませんが、SpecificClient@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
で宣言されています。
バージョンの問題により、 の使用方法を見つける必要がありますInheritanceType.JOINED
。良い点は、SpecificClientが常に継承ツリーの最後のクラスになることですが、異なるプロジェクトでは異なる可能性があります。
InheritanceType.JOINED
親クラスに注釈を挿入できる方法はありますか?- 特定のプロジェクトのニーズに応じて、ある種類の他の継承を使用できるように、親クラスを宣言できる方法はありますか?