0

Spring-Hibernate 統合のために、Spring で HibernateDaoSupport を使用しています。すべての getCurrentSession 呼び出しをインターセプトし、フィルターを有効にして、フィルター パラメーター値を設定する必要があります。

Hibernate は、getCurrentSession 呼び出しをインターセプトする CurrentSessionContext impl をサポートしています。Spring は、SpringSessionContext と呼ばれるこれの実装を提供します。しかし、HibernateDaoSupport を使用する場合、Spring には独自の SessionHolder メカニズムがあり、getCurrentSession() は呼び出されず、インターセプトは機能しません。これに対する回避策はありますか?

4

2 に答える 2

1

AnnotationSessionFactoryBean または LocalSessionFactoryBean を使用している場合は、次のプロパティも設定する必要があります。

<property name="exposeTransactionAwareSessionFactory" value="false" />

デフォルトでは true であり、hibernate.current_session_context_class プロパティが true の場合は無視されます。

于 2009-01-13T14:50:06.093 に答える
1

プレーンな Hibernate 3 API に基づいて Spring DAO を実装したいようです。

http://static.springframework.org/spring/docs/2.5.x/reference/orm.html#orm-hibernate-straight

于 2009-01-12T17:22:23.023 に答える