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

📄 httpresponsecachefilter.java

📁 一个非常好的FRAMWRK!是一个外国组织做的!不!
💻 JAVA
字号:
package com.jdon.util;

import javax.servlet.*;
import javax.servlet.http.*;

import java.io.IOException;
import java.util.*;

/**
 * 解决两个功能:
 * 1. 设置http头部的expire和last-modified
 * 具体应用程序,如论坛的帖子,将帖子最后更新日期保存到一个hashmap中,
 * 本程序从这个hashmap获取更新日期,关键问题是如何确定key?
 *
 * 2. 防止同一个IP在一秒内两次以上访问同一个jsp文件。
 *
 * <filter>
  <filter-name>
   ResponseHeaderFilter</filter-name>
  <filter-class>com.jdon.util.HttpResponseCacheFilter</filter-class>
  <init-param>
    <param-name>Cache-Control</param-name>
    <param-value>max-age=3600</param-value>
  </init-param>
 </filter>
 <filter-mapping>
  <filter-name>ResponseHeaderFilter</filter-name>
  <url-pattern>/logo.png</url-pattern>
 </filter-mapping>
 *   <param-value>
      private,no-cache,no-store</param-value>
 * <p>Copyright: Jdon.com Copyright (c) 2003</p>
 * <p></p>
 * @author banq
 * @version 1.0
 */

public class HttpResponseCacheFilter implements Filter {
  FilterConfig fc;
  public void doFilter(ServletRequest req,
                       ServletResponse res,
                       FilterChain chain) throws IOException,
      ServletException {

    HttpServletResponse response = (HttpServletResponse) res;
    // set the provided HTTP response parameters
    for (Enumeration e = fc.getInitParameterNames(); e.hasMoreElements(); ) {
      String headerName = (String) e.nextElement();
      response.addHeader(headerName, fc.getInitParameter(headerName));
    }
    // pass the request/response on
    chain.doFilter(req, response);
  }

  public void init(FilterConfig filterConfig) {
    this.fc = filterConfig;
  }

  public void destroy() {
    this.fc = null;
  }

}

⌨️ 快捷键说明

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