applicationContext.xml 配置如下:<!-- dataSource config -->
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url"
value="jdbc:mysql://localhost:3306/hcschool?useUnicode=true&amp;characterEncoding=UTF-8" />
<property name="username" value="root" />
<property name="password" value="123456" />
</bean>
<!-- SessionFactory -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="configLocation">
<value>classpath:hibernate.cfg.xml</value>
</property>
</bean> <bean id="txManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<tx:advice id="txAdvice" transaction-manager="txManager">
<tx:attributes>
<tx:method name="get*" read-only="true" />
<tx:method name="*" />
</tx:attributes>
</tx:advice><bean id="baseDao" class="com.hcschool.basedao.impl.BaseDaoImpl">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<bean id="userDao" class="com.hcschool.dao.impl.UserDaoImpl">
<property name="sessionFactory" ref="sessionFactory"></property>
<property name="entityClass" value="com.hcschool.vo.User"></property>
</bean>
<bean id="userServiceImpl" class="com.hcschool.service.impl.UserServiceImpl"
init-method="initialize">
<property name="userDao" ref="userDao"></property>
</bean>BaseDaoImpl.java  文件如下
public class BaseDaoImpl<T extends Serializable> extends HibernateDaoSupport
implements IBaseDao<T> { private static final Log log = LogFactory.getLog(BaseDaoImpl.class); private Class<T> entityClass; public BaseDaoImpl() {
} public BaseDaoImpl(Class<T> entityClass) {
this.entityClass = entityClass; } public Class<T> getEntityClass() {
return this.entityClass;
}; public void setEntityClass(Class<T> entityClass) {
this.entityClass = entityClass;
}; public void create(T t) throws DataAccessException {
this.getHibernateTemplate().save(t);
}我想问一下``为什么this.getHibernateTemplate().save(t);会报空指针?

解决方案 »

  1.   

    通过你的描述,应该是在Hibernate代理的时候出的问题,检查你的SESSION和代理类的配置文件!
    你的基础代理类有了,但是你没有应用它……
      

  2.   

    spring注入了之后
    是不是还需要在类里面添加
    sessionFaction以及对应的setget方法来着啊?
    忘记了呵呵你可以自己调试下 为什么是空指针 的问题
    空指针是程序员的自己的问题祝你成功
      

  3.   

    我想应该是session的问题``但我应该怎么检查呢``我是通过页面去调用的```
      

  4.   

    你检查下是不是this.getHibernateTemplate()为空
      

  5.   

    我打印getHibernate()时候出现null啊。求大神解决