在典型的Hibernate Spring应用程序中,我们将AnnotationSessionFactoryBean配置如下:
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"
p:dataSource-ref="dataSource"
p:packagesToScan="com.company.model"
p:hibernateProperties-ref="hibernateProperties" />
现在我们可以在我们的DAO中注入SessionFactory
:
@Autowired org.hibernate.SessionFactory ssessionFactory;
这意味着AnnotationSessionFactoryBean
和ssessionFactory
属于同一类型,这意味着它们应具有超类子类关系。但我无法从API文档中找到这种关系。我错过了什么?它们是如何属于同一类型的?
答案 0 :(得分:2)
不,它们的类型不同。 AnnotationSessionFactoryBean
是FactoryBean
。这是一个由Spring管理的特殊接口,它生成某种类型的bean。 AnnotationSessionFactoryBean
生成SessionFactory
。