Hibernate里sessionfactory 和configuration,datasource之间的关系问题
Hibernate 的工作流程
1.应用程序先调用Configuration类,该类读取Hibernate配置文件及映射文件中的信息;
2.用这些信息生成一个SessionFactory对象,从SessionFactory对象生成一个Session对象;
而hibernate在spring xml文件里的配置
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property><property name="configLocation">
<value>
classpath:hibernate.cfg.xml
</value>
</property>
</bean>
从工作流程看,configuration读配置文件信息后生成sessionfactory
可是beans.xml配置里,configuration配置文件竟然是sessionfactory的属性
另外,sessionfactory 是属于datasource的一种
而从xml配置里看,datasource是sessionfactory的属性
怎么感觉关系都倒转了?
回答:
org.springframework.orm.hibernate3.LocalSessionFactoryBean 这个是由spring
封装的对象,并非是hibernate
提供的。楼主可以阅读一下源码,实现与正常的一样。通过Configuration
构建SessionFactory
。
以上是 Hibernate里sessionfactory 和configuration,datasource之间的关系问题 的全部内容, 来源链接: utcz.com/p/171705.html