java关于ServletConfig FilterConfig什么用
来源:互联网 发布:查找客户资料的软件 编辑:程序博客网 时间:2024/06/05 02:23
具体的使用方法你可以在google上搜索 “filter 过滤器”,FilterConfig可以获取部署描述符文件(web.xml)中分配的过滤器初始化参数。
针对你的问题回答,结果就是说FilterConfig可以获得web.xml中,以 filter 作为描述标签内的参数。
定义:
FilterConfig对象提供对servlet环境及web.xml文件中指派的过滤器名的访问。
FilterConfig对象具有一个getInitParameter方法,它能够访问部署描述符文件(web.xml)中分配的过滤器初始化参数。
实例:
将下面的代码加入到web.xml中,试用FilterConfig就可以获得以 filter 作为描述标签内的参数。
<!-- The Cache Filter -->
<filter>
<!-- 设计过滤处理类,生成静态页面 -->
<filter-name>CacheFilter</filter-name>
<filter-class>com.jspbook.CacheFilter</filter-class>
<!-- 不需要缓存的URL -->
<init-param>
<param-name>/TimeMonger.jsp</param-name>
<param-value>nocache</param-value>
</init-param>
<init-param>
<param-name>/TestCache.jsp</param-name>
<param-value>nocache</param-value>
</init-param>
<!-- 缓存超时时间, 单位为秒 -->
<init-param>
<param-name>cacheTimeout</param-name>
<param-value>600</param-value>
</init-param>
<!-- 是否根据浏览器不同的地区设置进行缓存(生成的缓存文件为 test.jspid=1_zh_CN 的格式) -->
<init-param>
<param-name>locale-sensitive</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CacheFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
用法:
filterConfig.getInitParameter("locale-sensitive"); 得到的就是 ture
filterConfig.getInitParameter("cacheTimeout"); 得到的就是 600
filterConfig.getInitParameter(request.getRequestURI()); 得到的就是param-name 对应的 param-value 值
过滤处理类:
public class CacheFilter implements Filter {
ServletContext sc;
FilterConfig fc;
long cacheTimeout = Long.MAX_VALUE;
public void doFilter(ServletRequest req, ServletResponse res,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) res;
// check if was a resource that shouldn't be cached.
String r = sc.getRealPath("");
String path = fc.getInitParameter(request.getRequestURI());
if (path != null && path.equals("nocache")) {
chain.doFilter(request, response);
return;
}
path = r + path;
}
public void init(FilterConfig filterConfig) {
this.fc = filterConfig;
String ct = fc.getInitParameter("cacheTimeout");
if (ct != null) {
cacheTimeout = 60 * 1000 * Long.parseLong(ct);
}
this.sc = filterConfig.getServletContext();
}
public void destroy() {
this.sc = null;
this.fc = null;
}
}
- java关于ServletConfig FilterConfig什么用
- java关于ServletConfig FilterConfig什么用
- java关于ServletConfig FilterConfig什么用
- java关于ServletConfig FilterConfig什么用
- java关于ServletConfig FilterConfig什么用
- FilterConfig关于权限过滤
- java Servlet FilterConfig接口
- filterConfig
- Java-Filter-FilterChain-FilterConfig源码
- Java-ServletConfig
- Caused by: java.lang.NoClassDefFoundError: FilterConfig
- 关于servletConfig和servletContext
- 关于Filter(过滤器)的源码翻译(二)---FilterConfig
- this.filterConfig = filterConfig;
- ServletContext和ServletConfig有什么区别
- tomcat启动报错 - java.lang.NoClassDefFoundError: FilterConfig
- 启动Tomcat时报Caused by: java.lang.ClassNotFoundException: FilterConfig异常
- Caused by: java.lang.ClassNotFoundException: FilterConfig错误的解决办法
- JAVA中String.format的用法
- 计算二进制中1的个数
- 关于inline函数
- generic_netlink_howto
- La 3942
- java关于ServletConfig FilterConfig什么用
- Oracle11g和ArcGIS Desktop10.1以CS模式安装
- JSP中读文件和写文件的例子
- linux内核模块编程----ubuntu下我的第一个Hello World驱动
- 26. 不要忽视错误!
- 常见算法-多项式计算(1)
- request.getRemoteAddr()获取的值为0:0:0:0:0:0:0:1?
- 编程珠玑2章B问题--n元一维向量向左旋转i个位置
- php curl 对IP与来源地址的伪造