Spring在我們團隊的Java EE項目中使用,而hibernate用於基礎ORM。spring如何管理hibernate會話生命週期
transactionManager的設置如下圖所示:
<bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
SessionFactory的設置如下圖所示:
<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="packagesToScan"
value="com.company.model" />
<property name="hibernateProperties">
<value>
hibernate.dialect=org.hibernate.dialect.Oracle10gDialect
hibernate.show_sql=true
hibernate.jdbc.fetch_size=50
</value>
</property>
</bean>
我quesiton是thoughtout整個設置,我沒有看到任何屬性設置爲休眠會話生命週期。在hibernate參考中,引入了上下文會話,據說有三個CurrentSessionContext實現。
- JTA 2.Thread 3.Managed
我怎麼知道哪一個實現已經used.Maybe的春天,但我不知道。
檢查這裏類似的問題http://stackoverflow.com/questions/8724259/spring-hibernate-session-lifecycle –
我讀過你的建議後,但仍沒有得到確切的答案。 – Guanguan