功能描述
将HTTP响应头信息中的缓存参数设置为不进行缓存。
使用方法
在 java web 项目的 web.xml 文件中添加如下代码。
<!--设置不使用缓存的过滤器配置 开始 --> < filter >
< filter-name >ClearCacheFilter</ filter-name >
< filter-class >com.hmw.filter.ClearCacheFilter</ filter-class >
</ filter >
< filter-mapping >
< filter-name >ClearCacheFilter</ filter-name >
< url-pattern >*.do</ url-pattern >
</ filter-mapping >
< filter-mapping >
< filter-name >ClearCacheFilter</ filter-name >
< url-pattern >*.jsp</ url-pattern >
</ filter-mapping >
<!--设置不使用缓存的过滤器配置 结束 --> |
过滤器源码
package com.hmw.filter;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletResponse;
/** * 使浏览器不缓存页面信息的过滤器<br>
*/
public class ClearCacheFilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) throws IOException, ServletException {
HttpServletResponse httpResponse = (HttpServletResponse) response;
httpResponse.setHeader( "Cache-Control" , "no-cache" );
httpResponse.setHeader( "Pragma" , "no-cache" );
httpResponse.setDateHeader( "Expires" , - 1 );
filterChain.doFilter(request, response);
}
@Override
public void destroy() {
}
} |
相关推荐
在本篇文章中,我们将深入探讨如何使用Servlet过滤器来实现缓存机制,以此提高Web应用的性能。 首先,我们需要了解什么是缓存。缓存是一种存储技术,用于临时存储频繁访问的数据,以便快速检索。在Web应用中,通过...
本文将详细讲解三个使用JavaWeb过滤器的实际案例,帮助开发者深入理解其功能和应用场景。 案例1:分IP统计网站的访问次数 在网站运营中,了解用户访问来源是至关重要的。通过实现一个过滤器,我们可以记录每个IP...
在本实例中,我们将深入探讨Servlet过滤器(Filter)的使用和实现,以及它在实际应用中的重要性。 一、Servlet过滤器简介 Servlet过滤器遵循Java Servlet规范,通过实现`javax.servlet.Filter`接口来创建自定义过滤...
这个过滤器的作用是使浏览器不缓存页面,从而确保每次访问页面时都可以获取最新的内容。实现这个过滤器的关键是使用HTTP头信息,具体来说是使用Cache-Control、Pragma和Expires三个头信息。 在这个过滤器中,我们...
在这个案例中,我们关注的是使用C++来处理与Internet Explorer(IE)相关的功能,包括过滤器、缓存管理和主页设置。下面将详细讨论这些知识点。 首先,**C++过滤器**在IE中通常指的是扩展或插件,它们可以增强...
总之,JAVA过滤器作为Java Web开发中的一个重要组成部分,提供了强大的功能和灵活性,可以用于解决多种实际问题,包括但不限于编码处理、权限验证、日志记录、异常处理、数据格式转换和缓存优化等。理解和掌握过滤器...
本篇将详细阐述如何设置页面的缓存与不缓存,以及HTML页面中`meta`标签的作用。 首先,页面缓存主要通过HTTP协议头信息来控制。HTTP1.0使用`Pragma`字段,而在HTTP1.1中,`Cache-Control`字段成为了更强大的控制...
根据提供的信息,我们可以总结出以下关于servlet过滤器的相关知识点...综上所述,通过使用这些特定功能的过滤器,开发者可以在不修改具体业务逻辑的情况下对整个Web应用进行增强和优化,从而提高系统的健壮性和可用性。
- `init(FilterConfig config)`: 过滤器的初始化方法,在服务器启动时被调用,用于设置配置信息。 - `doFilter(ServletRequest request, ServletResponse response, FilterChain chain)`: 过滤器的核心方法,对请求...
当前端和后端不在同一域名下时,CORS过滤器可以处理跨域请求的问题。通过设置响应头,允许特定的源(Origin)访问服务端资源。 6. **静态资源缓存过滤器**: 对于不会频繁更改的静态资源(如CSS、JavaScript文件...
本篇文章将深入探讨Java中的过滤器使用技术,旨在帮助开发者理解和掌握这一核心技术。 首先,我们需要了解过滤器的概念。在Java Servlet规范中,过滤器是一个实现了javax.servlet.Filter接口的类,它可以对HTTP请求...
例如,设置过滤器的类名、URL模式、初始化参数等。 ```xml <filter-name>MyFilter <filter-class>com.example.MyFilterClass</filter-class> <filter-name>MyFilter <url-pattern>/somePath/* ``` 4...
在这个特定的场景下,我们关注的是“Loadrunner负载测试中的浏览器缓存设置”。了解如何在LoadRunner中正确设置浏览器缓存对于获取真实用户行为的数据至关重要,因为这直接影响到测试结果的准确性。 浏览器缓存是...
通过布隆过滤器,我们可以将已有的缓存数据放入其中,当请求到来时,先通过布隆过滤器检查,如果可能不存在于缓存中,再进行数据库查询,这样可以降低对数据库的压力。 **性能测试与误判率:** 在实际应用中,我们...
缓存问题解决方案和设置缓存方法 缓存是Web开发中一个常见的问题,它可以极大地影响网站的性能和用户体验。因此,解决缓存问题和设置缓存是非常重要的。在这篇文章中,我们将讨论如何解决缓存问题和设置缓存。 ...
在C#编程环境下,我们可以使用ASP.NET框架来实现Web过滤器,它对于构建安全、高效且可扩展的Web应用程序至关重要。 在ASP.NET中,过滤器主要分为四种类型:Action Filters、Authorization Filters、Exception ...
1. **使浏览器不缓存页面的过滤器** 这种过滤器主要用于防止浏览器对Web页面进行缓存,确保每次请求都能获取最新的内容。`ForceNoCacheFilter` 实现了 `javax.servlet.Filter` 接口,并在 `doFilter` 方法中设置了...
实现一个禁止缓存的过滤器。 要求和提示: (1)禁止浏览器缓存所有动态页面; (2)有3个http响应头字段可以禁止浏览器缓存当前页面,它们在Servlet中的示例代码如下。 response.setDateHeader("Expires",-1); ...
C# 版本的布隆过滤器实现了这一概念,通过使用八种不同的哈希函数来提高准确性和减少冲突。 布隆过滤器的基本原理是将所有可能存在的元素映射到一个固定大小的位数组(bit array)上。这个位数组最初全部设置为0。...
在ACCP课程中,这个“accp java过滤器 PPT”很可能是为了帮助学习者深入理解如何在Web应用程序中有效地使用过滤器技术。过滤器能够拦截请求和响应,对数据进行预处理或后处理,从而实现诸如权限控制、字符编码转换、...