过滤器Filter

Filter可以解决的问题实例:

1:登录网站后下次访问网站的任何资源都认为已经登录了

设置权限问题,一部分人可以访问资源,一部分人不可以

 2:解决全局编码

在filter的request中编写编码request.setCharacterEncoding( UTF-8 ),则后面的所有资源均可访问filter

        

filter可能有对个,filter不一定要对所有的资源进行过滤,chain.dofilter(request,response) 对资源放行,

 

服务器启启动创建filter对象,随之执行init()创建方法,服务器关闭时执行destory()方法,实现销毁

每次配置的目标资源经过filter进行过滤,doFilter方法就执行一次

       

      

 

struts2中使用到了filter:

下面代表访问任何资源都找structsPrepareAndExecuteFilter

下面代表访问资源时,只要资源的扩展名是.action就找structsPrepareAndExecuteFilter

FilterCain中根据web.xml文件中filter-mapping的放在顺序来确定filter的执行顺序

3种匹配方式:

1:完全匹配

2:目录匹配

3:扩展名(后缀名)匹配

/* :表示对所有资源进行过滤匹配

注意:重定向是直接访问,客户端再次访问服务器一次的过程,只不过是不是我手动输入地址进行访问而是客户端自动进行的直接访问

方法增强的三种方法:1 继承      2:装饰者模式     3:动态代理

案例1:使用装饰者模式设置全局编码

filter文件:

servlet文件:

jsp文件:

配置web.xml文件

 

案例2:自动登录

servlet文件:

srevice文件:

dao文件:

filter文件:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值