一尘不染

Hibernate 4.0中的HibernateDaoSupport

hibernate

我是jsf 2.0 spring 3.1和hibernate 4.1集成的新手。我如何更改以下代码,因为hibernate
4.0不包含HibernateDaoSupport。

import org.springframework.orm.hibernate3.support.HibernateDaoSupport;


    public class CustomerDaoImpl extends 
           HibernateDaoSupport implements CustomerDao{

        public void addCustomer(Customer customer){

            customer.setCreatedDate(new Date());
            getHibernateTemplate().save(customer);

        }

        public List<Customer> findAllCustomer(){

            return getHibernateTemplate().find("from Customer");

        }
    }

我正在尝试此示例:http : //www.mkyong.com/jsf2/jsf-2-0-spring-hibernate-
integration-example/


阅读 214

收藏
2020-06-20

共1个答案

一尘不染

我找到了解决方案。我应该改用会话工厂。

import java.util.List;

import org.hibernate.SessionFactory;

public class CustomerDaoImpl implements CustomerDao{
    private SessionFactory sessionFactory;
    public SessionFactory getSessionFactory() {
        return sessionFactory;}
    public void setSessionFactory(SessionFactory sessionFactory) {
         this.sessionFactory = sessionFactory;
    }

    public void addCustomer(Customer customer){


        getSessionFactory().getCurrentSession().save(customer);

    }

    public List<Customer> findAllCustomer(){

        List list = getSessionFactory().getCurrentSession().createQuery("from Customer").list();
        return list;

    }
}
2020-06-20