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

📄 connfilter.java

📁 社区文章采用的是平板、树形自由选择的两种展示方式
💻 JAVA
字号:
/*
 * Created on 2005-10-6
 * Last modified on 2007-12-20
 * Powered by YeQiangWei.com
 */
package com.yeqiangwei.club.filter;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
//import javax.servlet.http.HttpServletRequest;
//import javax.servlet.http.HttpServletResponse;

import org.apache.log4j.Logger;

import com.yeqiangwei.club.dao.hibernate.ConnectionProvider;
import com.yeqiangwei.club.exception.DAOException;

public class ConnFilter implements Filter {
	
	private static final Logger logger = Logger.getLogger(ConnFilter.class.getName());
	
    protected FilterConfig filterConfig = null;

    public void init(FilterConfig filterConfig) throws ServletException {
        this.filterConfig = filterConfig;
        try{
        	ConnectionProvider.init();
        }catch (DAOException e) {
    		logger.error(e.toString());
    	}
    } 
    
    public void doFilter(ServletRequest req
            , ServletResponse res
            , FilterChain chain) throws IOException, ServletException 
    {
		HttpServletRequest request = (HttpServletRequest) req;
		HttpServletResponse response = (HttpServletResponse) res;
		try{
        	ConnectionProvider.beginTransaction();
            chain.doFilter(req,res);
            ConnectionProvider.commitTransaction();
            
        }catch(Throwable e) {
        	if(e!=null){
        		logger.error(e.toString());
        	}
        	try {   
            	ConnectionProvider.rollbackTransaction();
            }catch (DAOException e2) {
            	logger.error("rollback error "+e2.toString());
            }
            request.setAttribute("message", com.yeqiangwei.club.util.MessageUtils.getMessage("error_system"));
            com.yeqiangwei.util.HttpServletUtils.forward(request, response, "/club/msg.jsp");
        }finally{
        	try {
        		ConnectionProvider.closeSession();
        	}catch (DAOException e3) {
        		logger.error("close session error "+e3.toString());
        	}
        }
    }
    
    public void destroy() {
       this.filterConfig = null;
    }
}

⌨️ 快捷键说明

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