❶ 如何在過濾器Filter.java中獲取jsp頁面文本框的值
1、在Jsp頁面將文本框輸入域放在html表單form之中提交
2、後台定義一個過濾器繼承Filter.java
3、在過濾器中的doFilter方法中,將參數ServletRequest轉化為HttpServletRequest
4、利用HttpServletRequest.getParameter();方法即可獲取對應輸入域的value值。
示例:
在Jsp頁面:
<form>
<input type="text" name="username" value="zhangsan"/>
</form>
後台過濾器:
public class TestFilter implements Filter{
@Override
public void destroy() {
}
@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filter) throws IOException, ServletException {
HttpServletRequest res = (HttpServletRequest) request;
//獲取頁面的username輸入框的值
String username = request.getParameter("username");
return;
}
@Override
public void init(FilterConfig arg0) throws ServletException {
}
}
❷ Java Web 中的過濾器如何使用
你你在配置過來濾器的自 時候
配置web.xml
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>com.SetCharacterEncodingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
最後的<url-pattern>/*</url-pattern> 就是過濾的路徑
比如你在文件夾下吧不過濾的放在根目錄,過濾的放在一個filter的文件夾下,那麼就配<url-pattern>/filter/*</url-pattern> 這樣根目錄的所有文件都不過濾,名字我隨便起的,你可以根據你自己的寫,或者這個*也可以用匹配符,比如<url-pattern>/*.jsp</url-pattern>
再或者<url-pattern>/java*</url-pattern> 這樣只有以java開頭的才過濾,其他的不過濾
你可以根據實際設置
❸ 如何用java過濾器是不要把login.jsp頁面也過濾掉
|public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest hrequest = (HttpServletRequest) request;
String uri = hrequest.getRequestURI();得到請求地址
String file[] = uri.split("/");通過/分隔,這樣,數組的最後一個值,就是頁面,
你比較下file[file.lenght-1].equals("login.jsp")就可以了。版
if(file[file.lenght-1].equals("login.jsp"||)){}要解除某頁權面的過濾,用||在if裡面添加就可以
chain.doFilter(request, response);
}
為了讓層次跟清晰一點,最好還是分文件夾。
❹ 在 java EE中怎麼實現對哪一個.jsp文件進行過濾
先寫個過濾的bean,然後在web.xml里配置,如下面是字元過濾:
<!-- 字元編碼過濾器 -->
<filter>
<filter-name>SetCharacterEncoding</filter-name>
<filter-class>filters.ChangeCharsetFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
<!-- 指定編碼為UTF-8 -->
</init-param>
</filter>
<filter-mapping>
<filter-name>SetCharacterEncoding</filter-name>
<url-pattern>/*</url-pattern> //注:把要過濾的jsp頁面添加到這里,*則對所有的頁面過濾
<!-- 對於所有的request改變其編碼 -->
</filter-mapping>
我只是個初學者,不知道說得對不對,嘿嘿。。。
❺ java web項目中過濾器的使用(過濾器執行多次)
圖片中顯示的log是執行一次的。
不是本來就打開login.jsp嗎,不用再跳轉到login.jsp,不是的時候,再跳轉。
❻ 如何配置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>
❼ jsp\java如何編寫過濾器過濾特殊字元
正則表達式來校驗:過濾器就網路一大堆,怎麼寫正則表達式,也可以網路,不知你說的特殊字元是什麼字元,所以只能給方法
❽ jsp 過濾器過濾jsp和html怎麼寫
<servlet-mapping>
<servlet-name>servletname</servlet-name>
<url-pattern>*.jsp</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>servletname</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
❾ 關於sevlet、過濾器、jsp、html、xml等這些javaweb的相關知識和用途,請各位大大們給個詳細的解釋和區別~
說簡單點:servlet就是接抄收頁面請求然後轉發的。
過濾器就是在servlet之前可以做驗證、亂碼方面的。
jsp就是java語言中的動態頁面.
html就是靜態頁面。
太詳細的話這里1W個字都說不完的.
❿ java jsp 中過濾器 filter 有什麼功能
過濾器來,聽名字就自是過濾作用了!!!
就是在瀏覽器發送請求道伺服器,可以先經過過濾器,然後再到我們寫的邏輯部分。
這些過濾器可以實現 表單驗證,用戶許可權等功能。比如一些不合法的表單輸入,就可以再過濾
器中處理不讓他運行我們的後面的邏輯。比如許可權低的用戶不能進入某些頁面或者實現某些功能