bloglinkfilter.java

来自「cwbbs 云网论坛源码」· Java 代码 · 共 61 行

JAVA
61
字号
package com.redmoon.blog;import java.io.*;import javax.servlet.*;import javax.servlet.http.*;import cn.js.fan.util.StrUtil;public class BlogLinkFilter implements Filter {    FilterConfig config;    public static Config cfg = Config.getInstance();    public void doFilter(ServletRequest req, ServletResponse res,                         FilterChain chain) throws ServletException,            IOException {        if (req instanceof HttpServletRequest) {            if (cfg.getBooleanProperty("isDomainMapToPath")) {                HttpServletRequest request = (HttpServletRequest) req;                                                                String uri = request.getRequestURI();                                if (uri.indexOf(".")==-1) {                    int p = uri.indexOf("blog");                    String domainField = uri.substring(p + 5);                    if (!domainField.equals("") && !domainField.startsWith("admin")) {                        String url = "myblog.jsp?blogId=";                        if (StrUtil.isNumeric(domainField)) {                            url += domainField;                        } else {                            UserConfigDb ucd = new UserConfigDb();                            long blogId = ucd.getBlogIdByDomain(domainField);                            url += blogId;                        }                                                RequestDispatcher rd = req.                                               getRequestDispatcher(                                url);                                                rd.forward(req, res);                        return;                    }                }            }            chain.doFilter(req, res);        }    }    public void init(FilterConfig config) throws ServletException {        this.config = config;    }    public void destroy() {        this.config = null;    }}

⌨️ 快捷键说明

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