1

これに対処する質問が既にある場合は、リンクが見つからないため、リンクを取得していただけますか。

Hibernate データベースに格納されているオブジェクトの格納されたクラス名を取得しようとしています。データベースを外部から見ると、クラス名を持つ文字列が保存されていることがわかります。オブジェクトを構築せずにクラス名を取得するにはどうすればよいですか?

前もって感謝します。

編集:いいえ、識別器を具体的に指定していません。これらは実際には格納されているサブクラスです。オブジェクトの実際のサブクラスを取得しようとしているだけです。

4

2 に答える 2

1

インスタンスをデータベース形式にマップする方法に応じて、いくつかの方法があります。どちらの場合も、最初のステップはConfiguration、マッピング構成を含む Hibernate のインスタンスを取得することです ( API ドキュメントを参照)。

ルート オブジェクトはConfigurationです。探している情報は、おそらく によって返されgetTableMappings()ます。デバッガーと Hibernate ソースを使用して、すべてがどのように機能するかを理解する必要があります。

Spring を使用している場合は、Configuration オブジェクトに到達する方法を理解する必要があります。あなたの最善の策は、にブレークポイントを設定することConfiguration.buildSessionFactory()です。それはあなたにアイデアを与えるはずです。

于 2009-08-05T15:07:56.880 に答える
0

そのタイプを格納するオブジェクトに新しいフィールドを作成しました。これは私が自分のソリューションに使用したものですが、識別子の値にアクセスする方法についてはまだ回答が欲しいです。

于 2009-08-05T22:00:56.027 に答える