導航:首頁 > 凈水問答 > jsp過濾器

jsp過濾器

發布時間:2024-11-29 04:33:18

⑴ jsp中過濾器可以攔截請求和響應嗎

過濾器可以動態地攔截請求和響應,以變換或使用包含在請求或響應中的信息。

⑵ JSP過濾器的作用是什麼用它有什麼好處

過濾器是一個對象,可以傳輸請求或修改響應。它可以在請求到達Servlet/JSP之前對其進行預處理,而且能夠在響應離開Servlet/JSP之後對其進行後處理。所以如果你有幾個Servlet/JSP需要執行同樣的數據轉換或頁面處理的話,你就可以寫一個過濾器類,然後在部署描述文件(web.xml)中把該過濾器與對應的Servlet/JSP聯系起來。你可以一個過濾器以作用於一個或一組servlet,零個或多個過濾器能過濾一個或多個servlet。一個過濾器實現java.servlet.Filter介面並定義它的三個方法:1. void init(FilterConfig config) throws ServletException:在過濾器執行service前被調用,以設置過濾器的配置對象。2. void destroy();在過濾器執行service後被調用。3. Void doFilter(ServletRequest req,ServletResponse res,FilterChain chain) throws IOException,ServletException;

⑶ JSP filter過濾器,怎樣可以配置成除某幾個jsp文件外,所有的jsp文件都過濾呢

你可以在xml文件裡面去抄更改襲
你在裡面好好的找找你過濾器的名字

過濾器默認的都是/*
你想保護什麼就吧*換成什麼或者是換成一個文件夾

如果你是昨晚項目在放的過濾器那就多弄幾個過濾器
一個個來(麻煩,最好提前想好,把需要保護的放在一個包裡面)

⑷ jsp/servlet過濾器和struts2攔截器的有什麼區別

攔截器和過濾器的區別:

1、攔截器是基於java的反射機制的,而過濾器是基於函數回調

2、過濾器依賴與servlet容器,而攔截器不依賴與servlet容器

3、攔截器只能對action請求起作用,而過濾器則可以對幾乎所有的請求起作用

4、攔截器可以訪問action上下文、值棧里的對象,而過濾器不能

5、在action的生命周期中,攔截器可以多次被調用,而過濾器只能在容器初始化時被調用一次

攔截器
:是在面向切面編程的就是在你的service或者一個方法前調用一個方法,或者在方法後調用一個方法比如動態代理就是攔截器的簡單實現,在你調用方法前列印出字元串(或者做其它業務邏輯的操作),也可以在你調用方法後列印出字元串,甚至在你拋出異常的時候做業務邏輯的操作。

下面通過實例來看一下過濾器和攔截器的區別:

使用攔截器進行/admin 目錄下jsp頁面的過濾

[html] view plain

<package name="newsDemo"
extends="struts-default"

namespace="/admin">

<interceptors>

<interceptor name="auth"
class="com.test.news.util.AccessInterceptor" />

<interceptor-stack name="authStack">

<interceptor-ref
name="auth" />

</interceptor-stack>

</interceptors>

<!-- action -->

<action name="newsAdminView!*" class="newsAction"

method="{1}">

<interceptor-ref
name="defaultStack"/>

<interceptor-ref
name="authStack">

</interceptor-ref>

下面是我實現的Interceptor class:

[java] view plain

package com.test.news.util;

import java.util.Map;

import com.opensymphony.xwork2.ActionContext;

import
com.opensymphony.xwork2.ActionInvocation;

import
com.opensymphony.xwork2.interceptor.AbstractInterceptor;

import
com.test.news.action.AdminLoginAction;

/**

*
@author chaoyin

*/

public class AccessInterceptor
extends AbstractInterceptor {

private static final long
serialVersionUID = -4291195782860785705L;

@Override

public String intercept(ActionInvocation actionInvocation) throws
Exception {

ActionContext actionContext =
actionInvocation.getInvocationContext();

Map session =
actionContext.getSession();

//except login action

Object action = actionInvocation.getAction();

if (action
instanceof AdminLoginAction) {

return
actionInvocation.invoke();

}

//check
session

if(session.get("user")==null ){

return
"logout";

}

return actionInvocation.invoke();//go
on

}

}

過濾器:是在javaweb中,你傳入的request,response提前過濾掉一些信息,或者提前設置一些參數,然後再傳入servlet或者struts的
action進行業務邏輯,比如過濾掉非法url(不是login.do的地址請求,如果用戶沒有登陸都過濾掉),或者在傳入servlet或者
struts的action前統一設置字元集,或者去除掉一些非法字元。

使用過濾器進行/admin
目錄下jsp頁面的過濾,首先在web.xml進行過濾器配置:

[html] view plain

<filter>

<filter-name>access
filter</filter-name>

<filter-class>

com.test.news.util.AccessFilter

</filter-class>

</filter>

<filter-mapping>

<filter-name>access filter</filter-name>

<url-pattern>/admin/*</url-pattern>

</filter-mapping>

下面是過濾的實現類:

[java] view
plain

package com.test.news.util;

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;

import
javax.servlet.http.HttpServletRequest;

import
javax.servlet.http.HttpServletResponse;

import
javax.servlet.http.HttpSession;

public class AccessFilter
implements Filter {

/**

* @author chaoyin

*/

public void destroy() {

}

public void doFilter(ServletRequest arg0, ServletResponse arg1,

FilterChain filterChain) throws IOException, ServletException {

HttpServletRequest request = (HttpServletRequest)arg0;

HttpServletResponse response = (HttpServletResponse)arg1;

HttpSession session = request.getSession();

if(session.getAttribute("user")== null &&
request.getRequestURI()。indexOf("login.jsp")==-1 ){

response.sendRedirect("login.jsp");

return ;

}

filterChain.doFilter(arg0, arg1);

}

public void init(FilterConfig arg0) throws ServletException {

}

}
摘自網路--

⑸ GPG過濾器JSP過濾器的作用好處

在Web開發中,過濾器(Filter)扮演著關鍵的角色,它作為一種可重用的對象,允許在請求(ServletRequest)到達Servlet或JSP之前進行預處理,並在響應(ServletResponse)離開這些資源後進行後處理。這種靈活性使得過濾器成為了處理通用任務的理想選擇,例如數據轉換或頁面處理,尤其是當多個Servlet或JSP需要執行類似操作時。


通過實現java.servlet.Filter介面,過濾器可以實現三個核心方法:首先,`void init(FilterConfig config) throws ServletException`,在過濾器開始服務之前被調用,允許過濾器設置自身的配置對象,以適應特定的環境需求。其次,`void destroy()`,在服務完成後執行,用於清理和釋放過濾器的資源。最後,`Void doFilter(ServletRequest req,ServletResponse res,FilterChain chain) throws IOException,ServletException`,這是過濾器的核心方法,它接收請求、響應和一個FilterChain對象,可以根據需要修改請求或響應,然後繼續請求的傳遞。


部署描述文件(web.xml)允許我們靈活地管理這些過濾器,可以將一個過濾器應用到一個或一組Servlet上,甚至可以配置多個過濾器來處理一個或多個Servlet。這種設計模式提高了代碼的復用性和模塊化,使得Web應用的結構更加清晰和高效。


(5)jsp過濾器擴展閱讀

GPG型過濾器是一個能使用低質水進行工業冷卻的過濾器;同時也可用於其他需要過濾的工藝過程,它具有反向沖洗排除雜質功能,一般安裝在換熱器其他執行機構的前面,定期沖洗排除雜質。

⑹ jsp和servlet在過濾器中怎麼判斷前後台

jsp,servlet,過濾器都是伺服器端組件,它們的處理邏輯都是在後台執行的。只是回最終生成的結果(通常為答jsp執行後的內容)發給了瀏覽器顯示,如果結果裡麵包含了javascript,瀏覽器會執行它。

所以不存在你說的」jsp和servlet在過濾器中怎麼判斷前後台」 的問題:所有Java代碼,不論是jsp、servlet、過濾器都是在後台執行的,它們執行的時候無法知道前端的環境(請求頭的user-agent中帶的信息除外)。輸出的html裡麵包含的javascript會在前端瀏覽器中執行。

如果你需要前端相關的信息,如瀏覽器內核類型等,在後台可以通過request.getHeader("user-agent")來獲得。如果需要瀏覽器窗口大小等相關信息,可以通過javascrtip獲取後用ajax等方式發送到後台,但通常不這么做,因為這些信息用戶可以隨意的改變。

⑺ java jsp 中過濾器 filter 有什麼功能

過濾器來,聽名字就自是過濾作用了!!!

就是在瀏覽器發送請求道伺服器,可以先經過過濾器,然後再到我們寫的邏輯部分。

這些過濾器可以實現 表單驗證,用戶許可權等功能。比如一些不合法的表單輸入,就可以再過濾
器中處理不讓他運行我們的後面的邏輯。比如許可權低的用戶不能進入某些頁面或者實現某些功能

⑻ 在JSP頁面提交表單,以post方式提交,寫了過濾器處理中文亂碼問題

可能造成的原因:

  1. 頁面 後台業務 數據 中間有一個環節編碼不一致。

  2. 是否對該欄位做了編碼轉換。


針對1:

檢查頁面編碼 是什麼編碼。如:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" %>

過濾器設置的是什麼編碼。資料庫採用什麼編碼。然後最好統一編碼。


針對2:

看看是否做了強制轉換,或者設置了request response的編碼。

⑼ jsp中為什麼加上了過濾器就報錯 (HTTP Status 404)

路徑配置錯誤

閱讀全文

與jsp過濾器相關的資料

熱點內容
清水和污水有什麼不同 瀏覽:91
燒烤凈化器怎麼拆卸完整版 瀏覽:43
污水處理進水負荷不夠 瀏覽:323
清理飲水機裡面的污垢用什麼刷 瀏覽:605
汽油濾芯外置多少錢一個 瀏覽:590
電泳廢水處理工程 瀏覽:326
怎樣去除洗手間頑固水垢 瀏覽:779
小型廢水處理器原理 瀏覽:77
城鎮污水處理廠污泥性質 瀏覽:216
aab怎麼用plc控制回原點 瀏覽:635
美的凈水機租賃機怎麼激活 瀏覽:457
歐琳400g飲水機多少錢 瀏覽:4
過濾器關聯規則演算法 瀏覽:681
水冷液里加蒸餾水可以嗎 瀏覽:768
宜州污水廢水處理價格是多少 瀏覽:805
jsp過濾器 瀏覽:234
江西電鍍污水除鉻價格怎麼樣 瀏覽:387
國外等離子體污水 瀏覽:303
和泰純水機的工作原理是什麼 瀏覽:357
台灣氟塑料提升泵 瀏覽:345