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&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);会报空指针?
<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&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);会报空指针?
你的基础代理类有了,但是你没有应用它……
是不是还需要在类里面添加
sessionFaction以及对应的setget方法来着啊?
忘记了呵呵你可以自己调试下 为什么是空指针 的问题
空指针是程序员的自己的问题祝你成功