Filter在Java中的作用有哪些?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
為常德等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務,及常德網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務為成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計、常德網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
定義: Filter,是Servlet的一種,接口類為javax.servlet.Filter,以一種模塊化或者可重用的方法封裝公共行為,本質(zhì)是可復用的代碼片段。
職責:在請求到達Servlet之前對請求頭作預處理,或者在服務器響應完成之后對響應內(nèi)容作后處理。分界線為chain.doFilter的調(diào)用。該調(diào)用是將請求處理權(quán)交給其Filter列表鏈上的其它Filter。
生命周期: Filter在Web容器啟動時被容器實例化,并調(diào)用其init方法完成初始化,每一個請求到達Servlet之前先經(jīng)過Filter的doFilter方法,容器停止時調(diào)用destroy方法。生命周期與Servlet類似。
常見應用:權(quán)限校驗、特殊日志、修改請求信息(如中文亂碼處理)
web.xml中配置Filter的url-pattern
1)/*和*過濾效果一樣,可以對所有的請求進行過濾
2)*.xxx后綴過濾
3)/這種配置過濾不了任何請求:tomcate的matchFilterUrl方法可以解釋過濾原理。
Filter的url-pattern與Servlet的url-pattern前兩種用法一樣,但第三種不一樣,對Servlet來說配置url-pattern為/說明將該Servlet作為項目的默認的Servlet,當某個請求路徑無法匹配時會由默認Servlet來處理該請求。而Filter,則對/的urlpattern,攔截不到任何請求的。
在web.xml中,容器啟動時加載的順序是context-param,其次是Listener,然后是Filter,最后是Servlet。
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。
網(wǎng)頁名稱:Filter在Java中的作用有哪些
網(wǎng)址分享:http://www.hntjjpw.com/article26/jieocg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、網(wǎng)站改版、虛擬主機、關(guān)鍵詞優(yōu)化、網(wǎng)站制作、面包屑導航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)