TranUtil.java
上传用户:zghglow
上传日期:2022-08-09
资源大小:27227k
文件大小:2k
源码类别:

WEB源码(ASP,PHP,...)

开发平台:

JavaScript

  1. package com.chinacannel.common;
  2. import net.sf.hibernate.*;
  3. import org.apache.commons.logging.LogFactory;
  4. import org.apache.commons.logging.Log;
  5. public class TranUtil {
  6.   private net.sf.hibernate.Transaction tran;
  7.   private net.sf.hibernate.Session session;
  8.   private static Log log = LogFactory.getLog(TranUtil.class);
  9.   public void beginTran() throws DAOException {
  10.     try {
  11.       session = HibernateUtil.currentSession();
  12.       tran = session.beginTransaction();
  13.     }
  14.     catch (HibernateException ex) {
  15.       log.error(ex.getMessage(), ex);
  16.       throw new DAOException(ex.getMessage());
  17.     }
  18.   }
  19.   public void rollback() throws DAOException {
  20.     try {
  21.       if(tran!=null)
  22.         tran.rollback();
  23.     }
  24.     catch (HibernateException ex) {
  25.       log.error(ex.getMessage(), ex);
  26.       throw new DAOException(ex.getMessage());
  27.     } finally {
  28.       try {
  29.         HibernateUtil.closeSession();
  30.       }
  31.       catch (HibernateException ex1) {
  32.           log.error(ex1.getMessage(), ex1);
  33.         throw new DAOException(ex1.getMessage());
  34.       }
  35.     }
  36.   }
  37.   public void commit() throws DAOException {
  38.     try {
  39.       if (tran != null)
  40.         tran.commit();
  41.       HibernateUtil.closeSession();
  42.     }
  43.     catch (HibernateException ex) {
  44.       log.error(ex.getMessage(), ex);
  45.       throw new DAOException(ex.getMessage());
  46.     }
  47.   }
  48.   public net.sf.hibernate.Session getSession() throws DAOException {
  49.     try {
  50.       return HibernateUtil.currentSession();
  51.     }
  52.     catch (HibernateException ex) {
  53.       log.error(ex.getMessage(), ex);
  54.       throw new DAOException(ex.getMessage());
  55.     }
  56.   }
  57.   public net.sf.hibernate.Transaction getTran() {
  58.     return tran;
  59.   }
  60. }