第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

聊聊java過濾器是怎樣使用的?

標(biāo)簽:
Java

过滤器的工作原理及生命周期

图片描述

图片描述
init():这是过滤器的初始化方法,web容器创建过滤器实例后将调用这个方法。这个方法中可以读取web.xml文件中过滤器的参数。

doFilter():这个方法完成实际的过滤操作。这个地方是过滤器的核心方法。当用户请求访问与过滤器关联的URL时,Web容器将先调用过滤器的doFilter方法。FilterChain参数可以调用chain.doFilter方法,将请求传给下一个过滤器(或目标资源),或利用转发,重定向将请求转发到其他资源。

destroy():web容器在销毁过滤器实例前调用该方法,在这个方法中可以释放过滤器占用的资源。(大多数情况用不到)
图片描述

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id=" <display-name>FilterTest</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

<filter>
<filter-name>FirstFilter</filter-name>
<filter-class>com.filter.FirstFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>FirstFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>

过滤器链
过滤器1 ,过滤器2
若他们的url-pattern不一样,则是互不干扰的两个过滤器
若他们的url-parttern一样,则形成了过滤器链

用户请求——》过滤器1——》过滤器2——》过滤器3——》web资源
服务器会按照web.xml中过滤器定义的先后顺序组装成一条链

过滤器链执行过程
图片描述
eg:
start----doFilter--FirstFilter
start---doFilter--SecondFilter
index.jsp
end---doFilter--SecondFilter
end------doFilter—FirstFilter

过滤器的分类
Servlet2.5

  1. Request:用户直接访问页面时,web容器将会调用过滤器
  2. Forward:目标资源是通过RequestDispatcher的forward访问时,该过滤器将被调用
  3. Include:目标资源是通过RequestDispatcher的include访问时,该过滤器将被调用
  4. Error:目标资源时通过声明式异常处理机制调用时,过滤器将被调用
    Servlet3.0
    ASYNC:支持异步处理

@WebFilter
@WebFilter用于将一个类声明为过滤器,该注解会在部署时被容器处理,容器将根据具体的属性配置将相应的类部署为过滤器。
图片描述

图片描述

过滤器在实际项目中的应用场景

  1. 对用户请求进行统一认证
  2. 编码转换
  3. 对用户发送的数据进行过滤替换
  4. 转换图像格式
  5. 对响应的内容进行压缩
點(diǎn)擊查看更多內(nèi)容
12人點(diǎn)贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
JAVA開發(fā)工程師
手記
粉絲
6
獲贊與收藏
91

關(guān)注作者,訂閱最新文章

閱讀免費(fèi)教程

感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊有機(jī)會得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

舉報(bào)

0/150
提交
取消