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

📄 customclickstreamfilter.java

📁 javaBB,一套很不錯的JSP源碼,特共享給大家
💻 JAVA
字号:
package org.javabb.infra;

import java.io.IOException;
import java.util.Map;

import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import com.opensymphony.clickstream.Clickstream;
import com.opensymphony.clickstream.ClickstreamFilter;
import com.opensymphony.clickstream.ClickstreamListener;

/**
 * The filter that keeps track of a new entry in the clickstream for <b>every request </b>.
 * @author <a href="plightbo@hotmail.com">Patrick Lightbody </a>
 */
public class CustomClickstreamFilter extends ClickstreamFilter {
    /**
     * Processes the given request and/or response.
     * @param request The request
     * @param response The response
     * @param chain The processing chain
     * @throws IOException If an error occurs
     * @throws ServletException If an error occurs
     */
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
        throws IOException,
            ServletException {

        HttpSession session = ((HttpServletRequest) request).getSession();
        Map clickstreams = (Map) session.getServletContext()
            .getAttribute(ClickstreamListener.CLICKSTREAMS_ATTRIBUTE_KEY);
        if (!clickstreams.containsKey(session.getId())) {
            Clickstream clickstream = new Clickstream();
            session.setAttribute(ClickstreamListener.SESSION_ATTRIBUTE_KEY, clickstream);
            clickstreams.put(session.getId(), clickstream);
        }

        super.doFilter(request, response, chain);
    }
}

⌨️ 快捷键说明

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