spring入门(11)-spring与hibernate整合完成增删改查的操作(封装HibernateTemplate模版类对象) (二)

2014-11-24 11:14:45 · 作者: · 浏览: 2
g.springframework.orm.hibernate3.HibernateTemplate;

import www.csdn.spring.hibernate.domain.Users;

public class UsersDaoImpl implements UsersDao{
// 封装模版类对象
private HibernateTemplate hibernateTemplate;

// 注入
public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
this.hibernateTemplate = hibernateTemplate;
}

@Override
public void save(Users entity) {
hibernateTemplate.save(entity);

}
@Override
public List getObjects(Class clazz) {

return hibernateTemplate.find("from "+clazz.getName());
}

@Override
public void deleteById(Class clazz,Integer id) {
//hibernateTemplate.delete(hibernateTemplate.get(clazz.getName(), id));
hibernateTemplate.bulkUpdate("delete from "+clazz.getName()+" where id="+id);
}

@Override
public void update(Users entity) {
hibernateTemplate.update(entity);

}

}

package www.csdn.spring.hibernate.dao;

import java.util.List;

import org.springframework.orm.hibernate3.HibernateTemplate;

import www.csdn.spring.hibernate.domain.Users;

public class UsersDaoImpl implements UsersDao{
// 封装模版类对象
private HibernateTemplate hibernateTemplate;

// 注入
public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
this.hibernateTemplate = hibernateTemplate;
}

@Override
public void save(Users entity) {
hibernateTemplate.save(entity);

}
@Override
public List getObjects(Class clazz) {

return hibernateTemplate.find("from "+clazz.getName());
}

@Override
public void deleteById(Class clazz,Integer id) {
//hibernateTemplate.delete(hibernateTemplate.get(clazz.getName(), id));
hibernateTemplate.bulkUpdate("delete from "+clazz.getName()+" where id="+id);
}

@Override
public void update(Users entity) {
hibernateTemplate.update(entity);

}

}
UserTest.java

[java]
package www.csdn.spring.hibernate.dao;



import java.util.Date;
import java.util.List;

import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import www.csdn.spring.hibernate.domain.Users;

public class UserTest {
//保存
@Test
public void save(){
ApplicationContext ac=new ClassPathXmlApplicationContext("app*.xml");
UsersDao usersdao=ac.getBean("usersDaoImpl",UsersDao.class);
usersdao.save(new Users(null,"chrp999999999",new Date()));

System.out.println(usersdao.getClass());

}
//获取所有
@Test
public void getObjects(){
ApplicationContext ac=new ClassPathXmlApplicationContext("app*.xml");
UsersDao usersdao=ac.getBean("usersDaoImpl",UsersDao.class);

List user=usersdao.getObjects(Users.class);
for(Users u:user){
System.out.println(u.toString());
}
}
//根据id删除
@Test
public void delete(){
ApplicationContext ac=new ClassPathXmlApplicationContext("app*.xml");
UsersDao usersdao=ac.getBean("usersDaoImpl",UsersDao.class);
usersdao.deleteById(Users.class,5);