downloadfilter.java

来自「一个用java编写的功能强大的OA系统」· Java 代码 · 共 61 行

JAVA
61
字号
package com.redmoon.oa;import java.io.*;import javax.servlet.*;import javax.servlet.http.*;import com.redmoon.oa.pvg.Privilege;public class DownloadFilter    implements Filter {  FilterConfig config;  public void doFilter(ServletRequest req, ServletResponse res,                       FilterChain chain) throws ServletException, IOException {    ServletContext context = config.getServletContext();    if (req instanceof HttpServletRequest) {      HttpServletRequest req1 = (HttpServletRequest) req;      Privilege privilege = new Privilege();            if (!privilege.isUserPrivValid(req1, "admin")) {        RequestDispatcher rd = null;        String url = "http://" + req1.getServerName() + ":" + req1.getServerPort() + req1.getContextPath() + "/images/err_pvg.gif";                                 ((HttpServletResponse)res).sendRedirect(url);        if (true)            return;        res.setContentType("text/html;charset=gb2312");        PrintWriter out = res.getWriter();        out.print("<p align=center>对不起,您未获得授权!</p>");        return;      }    }        ByteArrayResponseWrapper wrapper = new        ByteArrayResponseWrapper( (HttpServletResponse) res);    chain.doFilter(req, wrapper);    System.out.println("length3="+wrapper.getData().length);        OutputStream out = res.getOutputStream();    out.write(wrapper.getData());    System.out.println("length4="+wrapper.getData().length);  }  public void init(FilterConfig config) throws ServletException {    this.config = config;  }  public void destroy() {    this.config = null;  }}

⌨️ 快捷键说明

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