customerdaohibernateimpl.java
来自「加拿大达内科技有限公司配需java程序员的上课时的代码」· Java 代码 · 共 72 行
JAVA
72 行
package dao.hibernate;
import java.sql.SQLException;
import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.HibernateTemplate;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import dao.CustomerDAO;
import entity.Customer;
public class CustomerDAOHibernateImpl extends HibernateDaoSupport implements CustomerDAO{
public void delete(String name) {
// TODO Auto-generated method stub
Customer c = findByName(name);
getHibernateTemplate().delete(c);
}
public List<Customer> findAll() {
// TODO Auto-generated method stub
// String hql = "from Customer c";
// return getHibernateTemplate().find(hql);
HibernateTemplate ht =
getHibernateTemplate();
return ht.executeFind(new HibernateCallback(){
public Object doInHibernate(Session arg0) throws HibernateException, SQLException {
// TODO Auto-generated method stub
String hql = "from Customer c";
Query query = arg0.createQuery(hql);
return query.list();
}
});
}
public Customer findByName(final String name) {
// TODO Auto-generated method stub
// String hql = "from Customer c where c.name=:name";
// return (Customer) getHibernateTemplate()
// .findByNamedParam(hql, "name", name).get(0);
HibernateTemplate ht = getHibernateTemplate();
return (Customer) ht.execute(new HibernateCallback(){
public Object doInHibernate(Session arg0) throws HibernateException, SQLException {
// TODO Auto-generated method stub
String hql = "from Customer c where c.name=:name";
Query query = arg0.createQuery(hql);
query.setString("name", name);
return query.uniqueResult();
}
});
}
public void save(Customer c) {
// TODO Auto-generated method stub
getHibernateTemplate().saveOrUpdate(c);
}
public void update(Customer c) {
// TODO Auto-generated method stub
save(c);
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?