Caused by: java.lang.IllegalArgumentException: 'sessionFactory' or 'hibernateTemplate' is required
at org.springframework.orm.hibernate3.support.HibernateDaoSupport.checkDaoConfig(HibernateDaoSupport.java:118)
at org.springframework.dao.support.DaoSupport.afterPropertiesSet(DaoSupport.java:44)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1469)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409)
... 32 more
原因:
我的com.hibernate.dao.impl.UserDAOImpl.java继承了org.springframework.orm.hibernate3.support.HibernateDaoSupport, spring在初始化容器的时候会对这个对象作一个check, 可以看看HibernateDaoSupport源码中的checkDaoConfig()方法
protected final void checkDaoConfig()
{
if (this.hibernateTemplate == null)
throw new IllegalArgumentException("'sessionFactory' or 'hibernateTemplate' is required");
}
所以,在com.hibernate.dao.impl.UserDAOImpl对象一定要注入一个sessionFactory or hibernateTemplate对
象。
<bean id="userDao" class="com.hibernate.dao.impl.UserDAOImpl">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
分享到:
相关推荐
通常,这样的资料会涵盖Spring的ApplicationContext配置、Hibernate的SessionFactory配置、两者的整合方式,如使用HibernateTemplate或JPA,以及如何在Spring MVC中处理数据请求等。 学习Spring和Hibernate的整合,...
1. **配置**: 配置Spring的`LocalSessionFactoryBean`,指定Hibernate的相关属性,如配置文件、实体类包等,生成SessionFactory。 2. **依赖注入**: 将SessionFactory注入到需要的地方,然后创建Session。Spring...
《Spring+Hibernate参考书》是一本专注于整合Spring框架与Hibernate持久化库的指南,旨在帮助开发者深入了解和熟练掌握这两种在Java开发中广泛使用的开源技术。Spring以其强大的依赖注入(DI)和面向切面编程(AOP)...
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate5.HibernateTemplate"> <property name="sessionFactory" ref="sessionFactory"/> ``` **1.3 使用示例** ```java public class ...
通常我们使用HibernateTransactionManager,它与SessionFactory配合处理Hibernate的事务。 ```xml <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> ...
在Spring中使用Hibernate时,可以利用`HibernateTemplate`简化常见的CRUD操作,同时Spring的事务管理器能无缝集成Hibernate的事务处理,提供统一的事务控制。通过Spring配置,可以轻松管理Hibernate的SessionFactory...
Spring2.5和Hibernate3集成 采用声明式事务 1.声明式事务的配置 * 配置sessionFactory * 配置事务管理器 * 配置事务的传播特性 * 配置哪些类哪些方法使用事务 2.编写业务逻辑方法 * 继承...
TfileDAOHibernate通过扩展Spring提供的Hibernate支持类HibernateDaoSupport而建立,HibernateDaoSupport封装了HibernateTemplate,而HibernateTemplate封装了Hibernate所提供几乎所有的的数据操作方法,如execute...
throw new InvalidDataAccessApiUsageException("SessionFactory required for HibernateTemplate"); } // 获取当前会话 Session session = sessionFactory.getCurrentSession(); // 设置会话配置 ...
3. **配置SessionFactory**:在Spring的配置文件中,定义一个SessionFactory Bean,它将使用上面的`hibernate.cfg.xml`配置。同时,你可以在这里设置Hibernate的其他属性,例如自动更新数据库结构(`hbm2ddl.auto`)...
在Spring中,我们可以使用HibernateTemplate或SessionFactoryBean来配置和管理Hibernate。同样,Spring的声明式事务管理也可以应用到Hibernate上,只需将@Transactional注解添加到使用Hibernate的方法上,Spring就会...
- **集成方法**:在 Spring 中,可以通过 `SessionFactory` 和 `HibernateTemplate` 或 `JpaTemplate` 简化 Hibernate 的使用。`SessionFactory` 提供了创建 Session 的工厂,而 `HibernateTemplate` 或 `...
在Spring中使用Hibernate,通常需要配置SessionFactory、TransactionManager,使用HibernateTemplate或SessionFactoryBean进行数据访问,同时结合Spring的声明式事务管理,确保事务的正确性和一致性。 以上是对SSH...
Spring框架是Java开发中不可或缺的一部分,它以其丰富的功能和易用性深受开发者喜爱。以下是针对题目提供的内容,详细解析Spring框架的相关知识点。 1. **Spring框架的优点** - 分层架构:Spring允许开发者选择...
- 集成Hibernate,利用SessionFactory和HibernateTemplate。 - 集成Struts1和Struts2,实现MVC架构。 - 集成JPA,使用EntityManager和HibernateJpaVendorAdapter。 - 配置二级缓存(如Hibernate的EHCache)以...
开发人员可以通过Spring管理Hibernate的SessionFactory,并利用`HibernateTemplate`进行数据访问操作。 **2. Spring与Struts的整合** Spring可以作为Struts框架的替代方案来管理Action对象,这有助于简化Struts框架...
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate"> <property name="sessionFactory" ref="sessionFactory" /> class="org.springframework.orm.hibernate3....
Spring与Hibernate整合事务管理是企业级Java应用中的常见实践,旨在提供高效且一致的数据操作体验。在不使用Spring的情况下,Hibernate事务管理需要手动开启、提交和关闭事务,以确保数据一致性。然而,对于复杂的...
Spring 框架是Java开发中的核心组件,它以其丰富的特性和灵活性深受开发者喜爱。面试中,Spring的相关问题经常出现,下面将详细解答这些常见面试题。 首先,Spring的优点包括: 1. 分层架构:Spring允许开发者选择...