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

📄 bbsfilter.java

📁 tbuy1.1.5是在netbeans环境下用JSF技术编写的一个论坛tbuy1.1.5是在netbeans环境下用JSF技术编写的一个论坛
💻 JAVA
字号:
/* * 作者: 胡李青 * qq: 31703299 * Copyright (c) 2007 huliqing * 主页 http://www.tbuy.biz/ * 你可以免费使用该软件,未经许可请勿作用于任何商业目的,如有技术问题请与本人联系! * * 该类主要用于BBS访问转发,如 * /bbs/zone/x.jsp -> /bbs/zone.jsp * /bbs/forum/x.jsp -> /bbs/forum/x.jsp * /bbs/topic/x.jsp -> /bbs/topic.jsp */package biz.tbuy.bbs;import biz.tbuy.bbs.bean.BaseBean;import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.RequestDispatcher;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.HttpServletRequest;/** * @author huliqing * <p><b>qq:</b>31703299 * <p><b>E-mail:</b> * <a href="mailto:huliqing.cn@gmail.com">huliqing.cn@gmail.com</a> * <p><b>Homepage:</b> * <a href="http://www.tbuy.biz/">http://www.tbuy.biz/</a> */public class BBSFilter extends BaseBean implements Filter{    private FilterConfig filterConfig = null;    private boolean inZone;     /* 标识当前所在页面是否为 /bbs/zone.jsp    */    private boolean inForum;    /* 标识当前所在页面是否为 /bbs/forum.jsp   */    private boolean inTopic;    /* 标识当前所在页面是否为 /bbs/topic.jsp   */    public BBSFilter() {    }    public void doFilter(ServletRequest request,             ServletResponse response, FilterChain chain) throws IOException, ServletException {                HttpServletRequest requestHttp = (HttpServletRequest) request;        String requestURI = requestHttp.getRequestURI();        RequestDispatcher requestDispatcher;        // System.out.println("BBSFilter.requestURI=" + requestURI);        // 分析URI        this.parseURI(requestURI);                if (inZone) {            requestDispatcher =                     request.getRequestDispatcher("/bbs/zone.jsp");            requestDispatcher.forward(request, response);        } else if (inForum) {            requestDispatcher =                     request.getRequestDispatcher("/bbs/forum.jsp");            requestDispatcher.forward(request, response);        } else if (inTopic) {            requestDispatcher =                     request.getRequestDispatcher("/bbs/topic.jsp");            requestDispatcher.forward(request, response);        } else {             try {                chain.doFilter(request, response);            } catch(Throwable t) {}        }    }        private void initParam() {        this.inZone = false;        this.inForum = false;        this.inTopic = false;    }        /**     * 分析当前请求的URL是否于哪一个页面中     */     private void parseURI(String uri) {        // System.out.println("uri=" + uri);        this.initParam();   // 重新初始化数参数        if (uri.indexOf("/bbs/zone/") != -1) {            this.inZone = true;        } else if (uri.indexOf("/bbs/forum/") != -1) {            this.inForum = true;        } else if (uri.indexOf("/bbs/topic/") != -1) {            this.inTopic = true;        }    }    /**     * Return the filter configuration object for this filter.     * @return filterConfig     */    public FilterConfig getFilterConfig() {        return (this.filterConfig);    }        /**     * Set the filter configuration object for this filter.     * @param filterConfig The filter configuration object     */    public void setFilterConfig(FilterConfig filterConfig) {        this.filterConfig = filterConfig;    }        /**     * Destroy method for this filter     */    public void destroy() {    }        /**     * Init method for this filter     * @param filterConfig     */    public void init(FilterConfig filterConfig) {         this.filterConfig = filterConfig;    }}

⌨️ 快捷键说明

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