⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hibernateaspect.java

📁 办公自动化项目
💻 JAVA
字号:
package hong.javanet.dao;

import hong.javanet.aop.InterceptorHandler;
import hong.javanet.frame.PostInterceptorException;
import hong.javanet.frame.PreInterceptorException;
import hong.javanet.dao.*;
import org.hibernate.*;
//import hong.javanet.frame.ContextUtil;
import hong.javanet.util.ExceptionUtil;
import org.apache.log4j.Logger;

public class HibernateAspect        extends InterceptorHandler {
    private static Logger log =
      Logger.getLogger(HibernateAspect.class);
    Transaction tran  = null;
    public void doPreCommand(Object command) throws PostInterceptorException {
        tran =  HibernateUtil.currentSession().beginTransaction();
    }

    public void doPostCommand(Object command) throws PostInterceptorException {
       // Transaction tran = ContextUtil.getContext().transaction;
        if (tran != null) {
          tran.commit();
        } //提交
        HibernateUtil.closeSession(); //释放Session
    }

    public void doExceptionThrow(Object command,Throwable ex) throws
            PostInterceptorException {
        //Transaction tran = ContextUtil.getContext().transaction;
        if (tran != null) {
          tran.rollback();
        } //回滚
        HibernateUtil.closeSession(); //释放Session
        log.error(ex.getMessage(), ex); //错误日志
//        throw ExceptionUtil.wrapException(ex); //包装异常向外抛
    }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -