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

📄 persistencefilter.java

📁 OBPM是一个开源
💻 JAVA
字号:
package cn.myapps.base.web.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 org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

import cn.myapps.base.dao.PersistenceUtils;
import cn.myapps.core.macro.runner.JavaScriptRunner;

public class PersistenceFilter implements Filter {
	private static Log logger = LogFactory.getLog(PersistenceFilter.class);

	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain chain) throws IOException, ServletException {

		HttpServletRequest hreq = (HttpServletRequest) request;

		String uri = hreq.getRequestURI();

		if (uri.indexOf(".action") < 0 && uri.indexOf(".jsp") < 0
				&& uri.indexOf("/dwr/") < 0) {
			chain.doFilter(request, response);
			return;
		}

		// SessionSignal signal = PersistenceUtils.getSessionSignal();
		// signal.sessionSignal++;
		// logger.debug("before intercept$sessionSignal->" +
		// signal.sessionSignal);
		try {
			chain.doFilter(request, response);
		} catch (Exception e) {
		} finally {
			// signal.sessionSignal--;
			// logger.debug("after intercept$sessionSignal->"
			// + signal.sessionSignal);
			// if (signal.sessionSignal <= 0) {
			try {
				PersistenceUtils.closeSession();
				JavaScriptRunner.clear();
			} catch (Exception e) {
			}
			// }
		}
	}

	public void init(FilterConfig filterConfig) throws ServletException {
		// TODO Auto-generated method stub

	}

	public void destroy() {
		// TODO Auto-generated method stub

	}
}

⌨️ 快捷键说明

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