導航:首頁 > 凈水問答 > 在xml文件中添加過濾器

在xml文件中添加過濾器

發布時間:2022-04-30 01:57:25

㈠ java當中在web.xml中配置filter是指什麼

過濾器,過濾你需要的文件,然後進行相應的操作
過濾器的作用描述:
在HttpServletRequest 到達Servlet 之前內,攔截客戶的HttpServletRequest 。容

根據需要檢查HttpServletRequest ,也可以修改HttpServletRequest 頭和數據。
在HttpServletResponse 到達客戶端之前,攔截HttpServletResponse 。
根據需要檢查HttpServletResponse ,可以修改HttpServletResponse 頭和數據。
具體的操作方式的話,你可以去找一找,很多詳細資源

㈡ 如何配置Filter過濾器處理JSP中文亂碼

注意問題:在學慣用selvert的過濾器filter處理中文亂碼時,在filter配置初始化時用了utf-8處理中文亂碼,而在提交的jsp頁面中卻用了gbk。雖然兩種都可以出來中文亂碼,但是卻造成了處理亂碼的格式不一致。所以編譯出錯。
解決方法:所有地方都用utf-8或gbk

//過濾器類
CharactorFilter.jsp
package cn.com.Filter;
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 CharactorFilter implements Filter { //繼承Filter類
//字元編碼
String encoding=null;
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
if(encoding!=null){
//設置request字元編碼
request.setCharacterEncoding(encoding);
//設置response字元編碼
response.setContentType("text/html;charset="+encoding);
}
//傳遞給下一個過濾器
chain.doFilter(request, response);
}
public void init(FilterConfig filterConfig) throws ServletException {
//獲取初始化參數
encoding=filterConfig.getInitParameter("encoding");
}
public void destroy() {
// TODO Auto-generated method stub
encoding=null;
}
}

web.xml
<filter> <!--注意這里是filter,不要配置成servlet-->
<filter-name>CharactorFilter</filter-name> <!--過濾器名稱-->
<filter-class>cn.com.Filter.CharactorFilter</filter-class> <!--過濾器的完整類名-->
<init-param> <!--初始化參數-->
<param-name>encoding</param-name> <!--參數名稱-->
<param-value>utf-8</param-value> <!--參數值-->
</init-param>
</filter>
<filter-mapping> <!--過濾器映射-->
<filter-name>CharactorFilter</filter-name><!--過濾器名稱-->
<url-pattern>/*</url-pattern><!--URL映射,給所有頁面處理亂碼-->
</filter-mapping>

㈢ web.xml 配置過濾器 問題

伙計,別這樣寫了,出錯的原因不在過濾器本身,而是在xml文件上,xml文件不支持通配符版,所以你可以把<url-pattern>的值權改為"*",默認全都過濾,然後在過濾器裡面寫一個正則表達式:
String str = "[\\w]{1,}\\.jsp$";來判斷是否是jsp頁面,如果是就不執行doFilter()方法,這樣過濾才算靈活,獲取請求的文件名不用我說了吧?相信你會的

㈣ 在web.xml中配置多個filter是怎麼執行的

web.xml的部分配置文件:
<!--配置的filter-->
<filter>
<filter-name>struts2Filter</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<!-- UrlRewrite filter -->
<filter>
<filter-name>urlRewriteFilter</filter-name>
<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
</filter>

<!--配置的filtermapping-->
<filter-mapping>
<filter-name>struts2Filter</filter-name>
<url-pattern>*.action</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>

<filter-mapping>
<filter-name>urlRewriteFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
filter的執行類似於棧,執行順序是按照在配置文件中配置的順序執行的,比如定義兩個filter(f1,f2),過濾的對象為index.jsp,則客戶的請求(req)和響應(res)順序是req->f1->f2>index.jsp->f2->f1->res。

㈤ eclipse里配置xml文件,如何添加,比如我要部署filter,需要部署的東西我知道,就是不知道怎麼添加上去。

你別用這個視圖, 換到xhtml標記視圖,可以去網上下載配置標簽 網上有的是 復制粘貼就行 如果你非用這個視圖 滑鼠右鍵 會有驚喜的少年,
在你xml窗口 左下角 有切換視角的卡片 ,design 和 source 切換到 source 之後
在你web.xml 里 , 每個雙標記後 (結束後) 添加新標簽 也就是說 過濾器。。。等等。。
給你舉個例子

這是一組標簽。
你添加新標簽在其他成對出現標記結束後 粘貼你想要添加的標簽就可以了
然後 重啟tomcat 沒錯誤 就ok<?xml version="1.0" encoding="ISO-8859-1"?><br /><!DOCTYPE web-app<br />PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
<web-app>
<filter>你的過濾器名字。。。(對應的類文件位置你說你會寫的)</filter>
<!-- 如果還想添加別的標記 -->
<新標記1></新標記1>
<新標記2></新標記2>
<servlet>
<servlet-name>Test</servlet-name>
<servlet-class>moreservlets.TestServlet</servlet-class>
</servlet>
</web-app>

㈥ 搭建struts2環境,在web.xml中加入過濾器的代碼後訪問任何頁面都是404錯誤。請大家幫幫忙。

WEB.xml中配置struts2的代碼片段
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
'/*'是攔截所有的url,你這里可以配置你的過濾規則的啊(例如回/*.jsp、/*_aaa.jsp等),但是一般不需要答修改的,改了以後,擴展起來會給你帶來一些的不必要的麻煩的
望採納。

㈦ 如何創建過濾器Filter

建立一個過濾器涉及下列五個步驟: 1、建立一個實現Filter介面的類。這個類需要三個方法,分別是:doFilter、init和destroy。doFilter方法包含主要的過濾代碼,init方法建立設置操作,而destroy方法進行清楚。 2、在doFilter方法中放入過濾行為。doFilter方法的第一個參數為ServletRequest對象。此對象給過濾器提供了對進入的信息(包括表單數據、cookie和HTTP請求頭)的完全訪問。第二個參數為ServletResponse,通常在簡單的過濾器中忽略此參數。最後一個參數為FilterChain,如下一步所述,此參數用來調用servlet或JSP頁。 3、調用FilterChain對象的doFilter方法。Filter介面的doFilter方法取一個FilterChain對象作為它的一個參數。在調用此對象的doFilter方法時,激活下一個相關的過濾器。如果沒有另一個過濾器與servlet或JSP頁面關聯,則servlet或JSP頁面被激活。 4、對相應的servlet和JSP頁面注冊過濾器。在部署描述符文件(web.xml)中使用filter和filter-mapping元素。 5、禁用激活器servlet。防止用戶利用預設servlet URL繞過過濾器設置。doFilter方法: public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws ServletException, IOException{HttpServletRequest req = (HttpServletRequest)request; System.out.println(req.getRemoteHost() + " tried to access " +req.getRequestURL() +" on " + new Date() + "."); chain.doFilter(request,response); }在web.xml中進行部署 分別是:filter和filter-mapping。filter元素向系統注冊一個過濾對象,filter-mapping元素指定該過濾對象所應用的URL。 1.filter元素 filter元素位於部署描述符文件(web.xml)的前部,所有filter-mapping、servlet或servlet-mapping元素之前。filter元素具有如下六個可能的子元素: :icon 這是一個可選的元素,它聲明IDE能夠使用的一個圖象文件。 :filter-name 這是一個必需的元素,它給過濾器分配一個選定的名字。 :display-name 這是一個可選的元素,它給出IDE使用的短名稱。 :description 這也是一個可選的元素,它給出IDE的信息,提供文本文檔。 :filter-class 這是一個必需的元素,它指定過濾器實現類的完全限定名。 :init-param 這是一個可選的元素,它定義可利用FilterConfig的getInitParameter方法讀取的初始化參數。單個過濾器元素可包含多個init-param元素。2.filter-mapping元素 filter-mapping元素位於web.xml文件中filter元素之後serlvet元素之前。它包含如下三個可能的子元素:: :filter-name 這個必需的元素必須與用filter元素聲明時給予過濾器的名稱相匹配。 :url-pattern 此元素聲明一個以斜杠(/)開始的模式,它指定過濾器應用的URL。所有filter-mapping元素中必須提供url-pattern或servlet-name。但不能對單個filter-mapping元素提供多個url-pattern元素項。如果希望過濾器適用於多個模式,可重復整個filter-mapping元素。 :servlet-name 此元素給出一個名稱,此名稱必須與利用servlet元素給予servlet或JSP頁面的名稱相匹配。不能給單個filter-mapping元素提供多個servlet-name元素項。

㈧ 1這里說的在struts2的過濾器中添加:是指那個文件web.xml還是struts.xml 2。struts2的過濾器在哪

過濾器在web.xml中添加,filter標簽表示配置過濾器的標簽
struts.xml中配置的是攔截器,攔截具體的請求,並完成到相應處理的action 的映射

㈨ 關於jsp頁面的亂碼問題,在web.xml文件中配置了過濾器

首先,你要把你整個項目的編碼格式設置成utf-8,還有就是默認的編碼格式也要是utf-8,
如果還不行的話,可能是你瀏覽器的編碼格式造成的.修改下試試.祝你好運!

㈩ 簡述在web.xml中如何配置一個名為Demo的過濾器

<filter>
<filter-name>demo</filter-name>
<filter-class>xx.xx.Demo</filter-class>
</filter>
<filter-mapping>
<filter-name>demo</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

閱讀全文

與在xml文件中添加過濾器相關的資料

熱點內容
提升管反應器是固定床 瀏覽:139
qt事件過濾器之滑鼠左鍵雙擊 瀏覽:835
springurl參數過濾配置 瀏覽:757
工業廢水出水口怎麼樣 瀏覽:639
污水usb池 瀏覽:74
閣瑞斯汽油濾芯在什麼位置 瀏覽:977
水盟超濾凈水器 瀏覽:327
竹筷樹脂筷 瀏覽:465
挖機下柴油濾芯用什麼工具 瀏覽:235
寧波港口edi用在什麼領域 瀏覽:923
如何下載凈水器 瀏覽:547
河南凈水器品牌代理廠商電話多少 瀏覽:492
石油蒸餾產出物順序 瀏覽:892
普瑞斯空氣凈化器負離子怎麼用 瀏覽:501
超濾反洗與氣洗步驟 瀏覽:997
污水設施驗收 瀏覽:522
德龍咖啡機除垢上海 瀏覽:756
ro膜多大好 瀏覽:687
醫院超純水需要什麼資質 瀏覽:963
什麼相當半透膜滲透作用 瀏覽:559