package dao; import java.util.List; import org.hibernate.criterion.DetachedCriteria; publicinterface IDAO ...{ publicvoid save(Object obj); public List list(finalint firstRow,finalint lastRow,final String hql); public List list(); publicvoid delete(Object obj); public Object getPeople(Integer id); publicvoid editPeople(Object obj); public List searchPeople(finalint firstRow,finalint lastRow,final String hql); public List searchPeople(final String sql); }
StudentDAOImpl.java
package dao; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import org.hibernate.Criteria; import org.hibernate.HibernateException; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.criterion.DetachedCriteria; import org.springframework.orm.hibernate3.HibernateCallback; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; import domain.People; publicclass StudentDAOImpl extends HibernateDaoSupport implements IDAO ...{ public List searchPeople(finalint firstRow,finalint lastRow,final String hql)...{ return getHibernateTemplate().executeFind(new HibernateCallback() ...{ public Object doInHibernate(Session s) throws HibernateException, SQLException ...{ Query query = s.createQuery(hql); query.setFirstResult(firstRow); query.setMaxResults(lastRow); List list = query.list(); return list; } }); } public List searchPeople(final String hql)...{ return getHibernateTemplate().executeFind(new HibernateCallback() ...{ public Object doInHibernate(Session s) throws HibernateException, SQLException ...{ Query query = s.createQuery(hql); List list = query.list(); return list; } }); } publicvoid save(Object obj) ...{ if(obj instanceof People)...{ People people=(People)obj; try...{ getHibernateTemplate().save(people); }catch(Exception e)...{ e.printStackTrace(); } } } public List list()...{ return getHibernateTemplate().find("from People"); } public List list(finalint firstRow,finalint lastRow,final String hql)...{ return getHibernateTemplate().executeFind(new HibernateCallback() ...{ public Object doInHibernate(Session s) throws HibernateException, SQLException ...{ Query query = s.createQuery(hql); query.setFirstResult(firstRow); query.setMaxResults(lastRow); List list = query.list(); return list; } }); } publicvoid editPeople(Object obj)...{ if(obj instanceof People)...{ People people=(People)obj; try...{ getHibernateTemplate().saveOrUpdate(people); }catch(Exception e)...{ e.printStackTrace(); } } } public Object getPeople(Integer id)...{ return getHibernateTemplate().get(People.class, id); } publicvoid delete(Object obj)...{ if(obj instanceof People)...{ getHibernateTemplate().delete((People)obj); } } }