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

📄 performancefilter.java

📁 使用Servlet和JSP进行Web组件开发
💻 JAVA
字号:
package sl314.web;

import java.io.IOException;

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

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;

public class PerformanceFilter implements Filter {

  private FilterConfig config;
  private String logPrefix;

  public void init(FilterConfig config)
    throws ServletException {
    this.config = config;
    logPrefix = config.getInitParameter("Log Entry Prefix");
  }

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

    long begin = System.currentTimeMillis();
    chain.doFilter(request, response);
    long end = System.currentTimeMillis();

    StringBuffer logMessage = new StringBuffer();
    if (request instanceof HttpServletRequest) {
      logMessage = ((HttpServletRequest)request).getRequestURL();
    }
    logMessage.append(": ");
    logMessage.append(end - begin);
    logMessage.append(" ms");

    if(logPrefix != null) {
      logMessage.insert(0,logPrefix);
    }

    config.getServletContext().log(logMessage.toString());
  }

  public void destroy() {
    config = null;
    logPrefix = null;
  }

}

⌨️ 快捷键说明

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