本文是在上一篇博文的基础之上,通过继承HibernateDaoSupport调用hibernateTemplate类,只要将UserDaoImpl.java改为继承HibernateDaoSupport类,还有spring-dao.xml文件加入对HibernateDaoSupport的配置bean即可,具体实现源码如下:
UserDaoImpl.java
- package www.csdn.spring.hibernate.dao.copy;
- import java.util.List;
- import org.springframework.orm.hibernate3.HibernateTemplate;
- import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
- import www.csdn.spring.hibernate.domain.Users;
- public class UsersDaoImpl extends HibernateDaoSupport implements UsersDao{
- @Override
- public void save(Users entity) {
- getHibernateTemplate().save(entity);
- }
- @Override
- public List<Users> getObjects(Class clazz) {
- return getHibernateTemplate().find("from "+clazz.getName());
- }
- @Override
- public void deleteById(Class clazz,Integer id) {
- //getHibernateTemplate().delete(hibernateTemplate.get(clazz.getName(), id));
- getHibernateTemplate().bulkUpdate("delete from "+clazz.getName()+" where id="+id);
- }
- @Override
- public void update(Users entity) {
- getHibernateTemplate().update(entity);
- }
- }
spring-dao.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans.xsd">
- <bean id="hibernateDaoSupport" class="org.springframework.orm.hibernate3.support.HibernateDaoSupport" abstract="true">
- <property name="hibernateTemplate" ref="hibernateTemplate">
- </property>
- </bean>
- <bean id="usersDaoImpl" class="www.csdn.spring.hibernate.dao.copy.UsersDaoImpl" parent="hibernateDaoSupport">
- </bean>
- </beans>