欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Spring的SessionFactory管理 Spring配置管理HibernateORMBean 

程序员文章站 2022-06-06 17:50:45
...

1,Spring中设置的SessionFactory的bean如何产生hibernate需要的SessionFactory呢,

 

在配置文件中,SessionFactory的class属性为org.springframework.orm.hibernate3.LocalSessionFactoryBean.

如果用到标注产生model的情况,则SessionFactory的class属性为:

org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean。

 

LocalSessionFactoryBean如何生成SessionFactory的呢。

 

setDataSource方法获得容器注入的数据源(DataSource)。

 

buildSessionFactory方法通过读取配置文件属性生成Configuration对象。Configuration的buildSessionFactory方

 

法生成了SessionFactory对象。

 

org.hibernate.SessionFactory是SessionFactory接口类。

openSession(Connection connection)

openSession(Interceptor interceptor)

openSession(Connection connection, Interceptor interceptor);

openSession()

getCurrentSession()

这些方法获得Session。org.hibernate.impl.SessionFactoryImpl是SessionFactory接口类的实现。

 

org.hibernate.Session是Session接口。org.hibernate.impl.SessionImpl接口的实现。

 

getSession(EntityMode entityMode) 获得Session.

clear()清空

Connection close()关闭Session。

Connection connection()

Connection disconnect()

saveOrUpdate(Object object)

void save(Object obj, Serializable id)

通过这些方法可以操作数据库。

 

 

org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean类是从 LocalSessionFactoryBean继承而来,依赖于hibernate的Annotation插件。jdk必须大于等于5.0。