首先編寫一個Java類的filter代碼。
創(chuàng)新互聯(lián)專注于中大型企業(yè)的成都網(wǎng)站設(shè)計、成都網(wǎng)站制作和網(wǎng)站改版、網(wǎng)站營銷服務(wù),追求商業(yè)策劃與數(shù)據(jù)分析、創(chuàng)意藝術(shù)與技術(shù)開發(fā)的融合,累計客戶近千家,服務(wù)滿意度達(dá)97%。幫助廣大客戶順利對接上互聯(lián)網(wǎng)浪潮,準(zhǔn)確優(yōu)選出符合自己需要的互聯(lián)網(wǎng)運用,我們將一直專注品牌網(wǎng)站設(shè)計和互聯(lián)網(wǎng)程序開發(fā),在前進(jìn)的路上,與客戶一起成長!
下面是類中的代碼,實際上就是實現(xiàn)了Filter接口,重寫了一下doFilter函數(shù)。
new String(str.getBytes(),GBK);用這方法,把亂碼正確顯示。
首先將字符串轉(zhuǎn)換成byte數(shù)組。以iso8859-1的編碼來轉(zhuǎn)換。然后使用new String創(chuàng)建一個新字符串,前面帶上byte[]數(shù)組 后面帶上他的具體編碼。一般轉(zhuǎn)碼都使用這樣的方式。
chain.doFilter后面的代碼一般是對response執(zhí)行的操作。過濾鏈代碼的執(zhí)行順序如下:過濾器一般用于登錄權(quán)限驗證、資源訪問權(quán)限控制、敏感詞匯過濾、字符編碼轉(zhuǎn)換等等操作,便于代碼重用,不必每個servlet中還要進(jìn)行相應(yīng)的操作。
所以你需要新建一個web工程,然后在web.xml中配置該過濾器。
因此,普遍的辦法是利用init將FilterConfig對象存放在一個字段中,以便doFilter方法能夠訪問servlet環(huán)境或過濾器名.其次,F(xiàn)ilterConfig對象具有一個getInitParameter方法,它能夠訪問部署描述符文件(web.xml)中分配的過濾器初始化參數(shù)。
在doFilter()方法中,chain.doFilter()前的一般是對request執(zhí)行的過濾操作,chain.doFilter后面的代碼一般是對response執(zhí)行的操作。
過濾器只過濾請求,不過濾響應(yīng)。請求方式有REQUEST、INCLUE、FORWARD、ERROR四種。=== 你在說什么?用戶在請求頁面時,服務(wù)器不會直接把請求給頁面,而是先通過Filter,直到所有Filter都通過之后,再給要請求的頁面。
1)建立一個實現(xiàn)Filter接口的類。這個類需要三個方法,分別是:doFilter、init和destroy。doFilter方法 包含主要的過濾代碼(見第2步),init方法建立設(shè)置操作,而destroy方法進(jìn)行清楚。2) 在doFilter方法中放入過濾行為。
按照你上述配置的方式,是所有字符時通過spring的過濾器過濾的,那么這個東西你是看不到的,然后,你還配置了struts2的過濾器,那么過濾器的路徑是*。
1、如果是簡單的頁面權(quán)限控制,采用過濾器完全就可以實現(xiàn)了。 實現(xiàn)思路: 設(shè)計需要權(quán)限訪問的頁面存放在指定的目錄,如: /A/xxx.JSP 。
2、如圖,瀏覽器發(fā)出的請求先遞交給第一個filter進(jìn)行過濾,符合規(guī)則則放行,遞交給filter鏈中的下一個過濾器進(jìn)行過濾。過濾器在鏈中的順序與它在web.xml中配置的順序有關(guān),配置在前的則位于鏈的前端。
3、過濾器類需要實現(xiàn)UrlPatternMatcherStrategy接口,然后配置到springboot中,請參考 單點登錄 的 創(chuàng)建過濾器類 和 配置過濾器到springboot 。退出的方式有兩種,一種是走默認(rèn)的路徑,另一種是走自定義的返回路徑。
4、把所有系統(tǒng)的用戶同步到一個數(shù)據(jù)庫中,或者和一個中心庫做好對應(yīng)關(guān)系。在單點系統(tǒng)中對于輸入的用戶名和密碼在中心庫進(jìn)行驗證,或者根據(jù)配置到各自系統(tǒng)去驗證。
5、答案就在于,目標(biāo)資源一是客戶端直接訪問,而目標(biāo)資源二是被轉(zhuǎn)發(fā)過來的,這時過濾器就不能過濾目標(biāo)資源二。
新聞名稱:java過濾器的實現(xiàn)代碼 java過濾器怎么實現(xiàn)
網(wǎng)站鏈接:http://chinadenli.net/article7/dejecij.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站維護、用戶體驗、網(wǎng)站策劃、網(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)