0

動的なテーブル名を持つデータ ソースへの休止状態のマッピングを作成したいと考えています。テーブルは、従来のツールによって別のソースから抽出されたデータセットを反映しており、テーブル名自体がテーブル内のデータに関するメタ情報を保持しています。テーブル名はリクエストごとに変わります。

これを休止状態でマップすることは可能ですか? テーブル名を変更するための一時的なインターセプターのことを考えていますが、これを行うための最良の方法について頭を悩ませることはできません。


12/07/12 編集

..そして、私が必要とするのは読み取り専用アクセスだけであることをおそらく言及する必要がありました。表は「レポート」データを表すため、決して変更しないでください。

4

1 に答える 1

1

sessionfactory は不変であるため、動的テーブル名は hibernate ではそれほど簡単ではありません。毎回新しい sessionfactory を構築する必要があります。ユースケースに応じて、いくつかのオプションが表示されます。

  • 読み取り専用:固定列エイリアスで sqlquery を使用し、AliasToBean を使用します
  • r* ead write: * xml マッピング テンプレートを使用し、リクエストごとに新しい sessionfactory を構築します (おそらく遅い)
  • 可能であれば、起動時にテーブル名がわかっている場合:各テーブル名のマッピングを生成し、entityname を使用して実行時に使用するものを区別します
于 2012-07-09T06:02:31.067 に答える