当前位置:编程学习 > JAVA >>

spring入门(12)-spring与hibernate整合完成增删改查的操作(继承HibernateDaoSupport调用hibernateTemplate类)

本文是在上一篇博文的基础之上,通过继承HibernateDaoSupport调用hibernateTemplate类,只要将UserDaoImpl.java改为继承HibernateDaoSupport类,还有spring-dao.xml文件加入对HibernateDaoSupport的配置bean即可,具体实现源码如下:

UserDaoImpl.java

[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); 
         
    } 
 

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

[html]
<?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> 

<?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>


 

补充:软件开发 , Java ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,