Filter中每一个方法中参数的详解
来源:互联网 发布:linux应用放到哪里 编辑:程序博客网 时间:2024/06/07 10:24
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;public class EncodeFilter implements Filter{public void init(FilterConfig filterConfig) throws ServletException {// TODO Auto-generated method stub}public void doFilter(ServletRequest request, ServletResponse response,FilterChain chain) throws IOException, ServletException {// TODO Auto-generated method stub}public void destroy() {// TODO Auto-generated method stub}}
init(FilterConfig filterConfig)throws ServletException:在 web 应用程序启动时,web 服务器将根据 web.xml 文件中的配置信息来创建每个注册的 Filter 实例对象,并将其保存在服务器的内存中。Web容器创建 Filter 对象实例后,将立即调用该 Filter 对象的 init 方法。Init 方法在 Filter 生命周期中仅执行一次,web 容器在调用 init 方法时,会传递一个包含 Filter 的配置和运行环境的 FilterConfig 对象(FilterConfig的用法和ServletConfig类似)。利用FilterConfig对象可以得到ServletContext对象,以及部署描述符中配置的过滤器的初始化参数。在这个方法中,可以抛出ServletException异常,通知容器该过滤器不能正常工作。
与开发Servlet不同的是,Filter接口并没有相应的实现类可供继承,要开发过滤器,只能直接实现Filter接口。
doFilter(ServletRequest request,ServletResponse response,
FilterChain chain)throws java.io.IOException,ServletException:
doFilter()方法类似于Servlet接口的service()方法。当客户端请求目标资源的时候,容器就会调用与这个目标资源相关联的过滤器的 doFilter()方法。其中参数 request, response 为 web 容器或 Filter 链的上一个 Filter 传递过来的请求和相应对象;参数 chain 为代表当前 Filter 链的对象,在特定的操作完成后,可以在当前 Filter 对象的 doFilter 方法内部需要调用 FilterChain 对象的 chain.doFilter(request,response)方法才能把请求交付给 Filter 链中的下一个 Filter 或者目标 Servlet 程序去处理,也可以直接向客户端返回响应信息,或者利用RequestDispatcher的forward()和include()方法,以及 HttpServletResponse的sendRedirect()方法将请求转向到其他资源。这个方法的请求和响应参数的类型是 ServletRequest和ServletResponse,也就是说,过滤器的使用并不依赖于具体的协议。
- Filter中每一个方法中参数的详解
- viewpager.setOnPageChangeListener中方法的参数详解
- jQuery中$.ajax()方法的参数详解
- Engine中IFeatureClass.Search(filter, Recycling)方法中Recycling参数的理解
- IFeatureClass.Search(filter, Recycling)方法中Recycling参数的含义简介
- filter在spring框架中使用配置文件参数的一种方法
- AngularJS中filter过滤器的用法详解
- 在Filter中获取web.xml中配置的参数
- ArcEngine中getLayer方法的UID参数的详解
- ArcEngine中getLayer方法的UID参数的详解
- jQuery中filter() 方法的使用
- 如何获取window.location.search中每一个查询参数函数的封装
- 写一个方法,参数接收一个String类型的对象,最终可以把这个字符串参数中出现过的每一个字母打印出来 例如: "wwqweqdasdafdsfdsferer" 将来方法接收这个参数后会打印:
- Caffe中配置每一个层的结构
- ListView集合中设置标记 setTag();方法带一个参数和两个参数的区别,以及设置标记时ViewHolder中的每一个属性控件都需要设置一次,否则在Item中每一个控件的点击事件中取出设置的标
- JQuery中$.ajax()方法参数详解
- JQuery中$.ajax()方法参数详解
- JQuery中$.ajax()方法参数详解
- Eclipse 增加打开文件路径功能
- 学习 java netty (三) -- Channel
- Git SSH Key 生成步骤
- Pool, SimplePool与SynchronizedPool
- HDU 2069 Coin Change 母函数求解
- Filter中每一个方法中参数的详解
- Java 学习笔记
- Swift入门(二)——字符与字符串
- 关于linux设备模型kobject,kset,ktype
- 《一起学》系列3:C++对象模型
- Java Technical Notes
- windows 8下IIS8 HTTP 错误 500.19 - Internal Server Error
- 《一起学》系列4:编译链接过程
- C语言中联合体union的使用