读书人

hibernate BaseDao的几个步骤

发布时间: 2012-10-07 17:28:51 作者: rapoo

hibernate BaseDao的几个方法

package com.happybolin.mytest;import java.util.List;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.hibernate.HibernateException;import org.hibernate.Query;import org.hibernate.Session;import org.hibernate.Transaction;public class AbstractDao {private Session session;private Transaction tr;private Log log = LogFactory.getLog(AbstractDao.class);public AbstractDao() {   HibernateUtil.buildSessionFactory();}protected void saveorUpdate(Object obj) {   try {    startOperation();    session.saveOrUpdate(obj);    tr.commit();   } catch (HibernateException e) {    log.error("saveorUpdate is fault");   } finally {    HibernateUtil.close(session);   }}protected void delete(Object obj) {   try {    startOperation();    session.delete(obj);    tr.commit();   } catch (HibernateException e) {    log.error("could not delete ");   } finally {    HibernateUtil.close(session);   }}protected Object find(Class clazz, Long id) {   Object obj = null;   try {    startOperation();    obj = session.load(clazz, id);   } catch (HibernateException e) {    log.error("find is fault");   } finally {    HibernateUtil.close(session);   }   return obj;}protected List findAll(Class clazz) {   List objects = null;   try {    startOperation();    Query query = session.createQuery("from clazz.getName");    objects = query.list();    tr.commit();   } catch (HibernateException e) {    log.error("findAll is fault");   } finally {    HibernateUtil.close(session);   }   return objects;}protected void startOperation() throws HibernateException {   session = HibernateUtil.openSession();   tr = session.beginTransaction();}}


读书人网 >软件架构设计

热点推荐