LocalSessionFactoryBean 本身不是一个session factory,但是spring会自动把对这个bean的引用替换成LocalSessionFactoryBean 里面的真正的session factory。
具体解释一下:
在LocalSessionFactoryBean 这个class里面有个字段是存放真正的session factory的:
Java代码:
public class LocalSessionFactoryBean implements FactoryBean, InitializingBean, DisposableBean {
private SessionFactory sessionFactory;
public Object getObject(); {
return this.sessionFactory;
}
当引用这个LocalSessionFactoryBean 的时候,比如applicationContext.getBean("localSessionFactoryBean ")这样,spring返回的不是LocalSessionFactoryBean 本身,他会自动调用getObject()这个方法,把真正的session factory返回。用<ref bean="">这样引用也一样,得到的都是session factory而不是LocalSessionFactoryBean
。这里代码没贴全,有兴趣的话去看看源代码。
所以不需要再显式地创建一个session factory,直接引用LocalSessionFactoryBean 就可以了。
转正:http://hi.baidu.com/birdnic/blog/item/6cadc0399183f5f43b87ce6d.html
分享到:
相关推荐
### 关于 "org.springframework.orm.hibernate3.LocalSessionFactoryBean" 未找到问题的知识点解析 #### 一、问题背景 在开发基于Spring与Hibernate整合的应用时,可能会遇到“`org.springframework.orm.hibernate...
这三种方式包括:通过`LocalSessionFactoryBean`配置、直接注入`SessionFactory`实例以及使用自定义的SessionFactory Bean。下面将详细解释每种方法的特点与应用场景。 ### 1. 使用`LocalSessionFactoryBean`配置 ...
在这个场景中,我们关注的是不通过传统的`hibernate.cfg.xml`文件来配置Hibernate,而是借助Spring框架的`LocalSessionFactoryBean`进行整合。 首先,`hibernate.cfg.xml`是Hibernate传统配置文件,它包含了数据库...
Spring通过`LocalSessionFactoryBean`类实现了对Hibernate的驱动,使得开发者能够更加灵活和方便地管理数据持久化操作。`LocalSessionFactoryBean`是一个工厂Bean,它负责创建并配置Hibernate的`SessionFactory`。 ...
applicationContext-db.xml中配置的是关于数据库的文件。 文件中的数据库名字为ssh2,如果你想修改成为你自己的数据库名,只需将该文件中16行DatabaseName对应的值改下就ok了! 2.执行com.ssh2.utile包下的Create...
要让Hibernate同时支持XML和注解映射,我们可以创建一个新的配置类,该类扩展`AnnotationSessionFactoryBean`,并在需要时调用其父类`LocalSessionFactoryBean`的方法来处理XML映射。这样,我们就可以拥有一个单一的...
在"LocalSessionFactoryBean.txt"中,可能包含了关于如何配置Spring与Hibernate集成的部分,LocalSessionFactoryBean是Spring提供的一个工厂类,用于创建Hibernate的SessionFactory对象,这是操作数据库的主要入口。...
通过上述分析,我们可以看出,虽然描述部分提供的信息有限,但是通过深入探讨与`org.springframework.orm.hibernate3.LocalSessionFactoryBean`相关的异常及解决方案,可以帮助初学者更好地理解和应对这些问题。...
关于MyBatis,由于其升级版MyBatis自身已经集成了对Spring的支持,所以在Spring应用中,可以直接使用MyBatis的`SqlSessionFactoryBean`和`MyBatisNamespaceHandler`进行配置,而无需Spring额外提供支持。 总的来说...
《尚硅谷-佟刚-spring使用的spring-framework-4.0.0.RELEASE》是一个关于Spring框架的教程资源,其中特别关注了Spring与Hibernate的整合。在这个版本中,Spring Framework 4.0.0.RELEASE提供了对Hibernate的支持,...
在本文中,我们将深入探讨如何将Spring Boot框架与Hibernate ORM集成,特别是在不使用JPA(Java ...在chapter12-hibernate目录中,可能包含了更多关于这个主题的示例代码和详细说明,供读者进一步学习和参考。
在描述中提到的错误涉及到Spring和Hibernate的集成,具体是`org.springframework.orm.hibernate3.LocalSessionFactoryBean`。这个类是Spring框架的一部分,它用于配置和管理Hibernate的数据源和会话工厂。当出现...
LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean(); sessionFactory.setDataSource(dataSource1); sessionFactory.setPackagesToScan("com.example.entity1"); // 配置hibernate属性 ...
在Hibernate 3中,`LocalSessionFactoryBean`的类路径发生了改变,从`org.springframework.orm.hibernate.LocalSessionFactoryBean`变为`org.springframework.orm.hibernate3.LocalSessionFactoryBean`。这个更改...
在本篇文章中,我们将探讨如何通过Spring的`LocalSessionFactoryBean`来替代`hibernate.cfg.xml`,并详细介绍`mappingResources`、`mappingLocations`、`mappingDirectoryLocations`和`mappingJarLocations`这四个...
- **LocalSessionFactoryBean**:同样是Spring提供的SessionFactory创建工具,但更加灵活,允许设置更多配置项,如数据源、Hibernate属性等。`LocalSessionFactoryBean`通常作为`AnnotationSessionFactoryBean`的...
spring-hibernate3.jar包,直接导入路径即可,解决Class 'org.springframework.orm.hibernate3.LocalSessionFactoryBean' not found这个错误