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

jsp過濾errcode

發布時間:2024-03-27 14:03:12

1. jsp防止直接通過url訪問沒有許可權的頁面

jsp防止直接通過url訪問是通過過濾器實現的。
過濾器內容:
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse resp = (HttpServletResponse) response;
String conString = "";
conString = req.getHeader("REFERER");//獲取父url--如果不是直接輸入的話就是先前的訪問過來的頁面,要是用戶輸入了,這個父url是不存在的
if("".equals(conString) || null==conString){ //判斷如空森果上一個目錄為空斗兆畝的話,說明是用戶直接輸入url訪問的
String servletPath = req.getServletPath();//當前請求url,去掉幾個可以直接訪問的頁面
if(servletPath.contains("index.jsp") || servletPath.contains("admin/login.jsp")){ //跳過index.jsp和登陸Login.jsp
chain.doFilter(request, response);
} else {
resp.sendRedirect("/ejuornal/index.jsp");//跳回首頁
}
} else {
chain.doFilter(request, response);
}
}
過濾器配置:
<猜姿?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
<display-name></display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<filter>
<filter-name>FilterPages</filter-name>
<filter-class>com.ejuornal.filter.FilterPages</filter-class>
</filter>
<filter-mapping>
<filter-name>FilterPages</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
</web-app>

2. jsp的驗證碼怎麼讓過濾器不過濾

將驗證碼部分做成一個servlet服務或者action服務,然後再過濾器里對路徑進行識別,發現是驗證碼服務時不處理。

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

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

4. JSP中用filter 過濾某個包中的所有servlet

web.xml中這樣配置:

<servlet>

<servlet-name>Login</servlet-name>

<servlet-class>com.zq.servlet.Login</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>Login</servlet-name>

<url-pattern>/servlet/Login</url-pattern>

</servlet-mapping>

或者不配置web.xml在servlet中寫註解:

@WebServlet("/servlet/Login")

配置fliter可以在web.xml中這樣寫:

<filter>

<filter-name>LoginFilter</filter-name>

<filter-class>com.zy.filter.UserLoginFilter</filter-class>

</filter>

<filter-mapping>

<filter-name>LoginFilter</filter-name>

<url-pattern>/servlet/*</url-pattern>

</filter-mapping>

或者不配置web.xml在filter中寫註解:

@WebFilter(filterName="/MyFilter",urlPatterns="/servlet/*")

即在所有想過濾的servlet名字前加上「/setvlet」在過濾的時候過濾路徑就可以寫成「/servlet/*」這樣就能過濾所有的Servlet。

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

路徑配置錯誤

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

可能造成的原因:

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

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


針對1:

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

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

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


針對2:

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

7. jfinal如何過濾對JSP/html的請求

jfinal對jsp或者html過濾的請求配置:
public class PermissionHandler extends Handler {

@Override
public void handle(String target, HttpServletRequest request,
HttpServletResponse response, boolean[] isHandled) {
int indexJsp= target.lastIndexOf(".jsp");
int indexHtml = target.lastIndexOf(".html");
if (indexJsp!= -1 || indexHtml!= -1) {
System.out.println(target);
if (request.getSession().getAttribute(Const.LOGINUSER) == null) {
System.out.println("沒有登陸!跳轉到.html");
target = "/login.html";
} else {
System.out.println("登陸了,放行!");
}
}
nextHandler.handle(target, request, response, isHandled);
}

閱讀全文

與jsp過濾errcode相關的資料

熱點內容
廣州廢水零排放設備 瀏覽:687
過濾水中的不溶解雜質 瀏覽:244
雅馬哈r6多少公里換機油濾芯 瀏覽:683
市政污水管安全技術交底 瀏覽:282
凈水機組合閥是什麼配件 瀏覽:168
朗逸的空調濾芯怎麼裝 瀏覽:292
光面樹脂瓦好還是毛面樹脂瓦好 瀏覽:676
環氧樹脂加工品 瀏覽:274
epp回用 瀏覽:559
飲水機反滲透裝置 瀏覽:173
工業廢水中cod排放 瀏覽:656
頗爾超濾器 瀏覽:768
廚房凈水器怎麼選擇 瀏覽:97
米揚凈水器怎麼用 瀏覽:436
餐飲沒按油煙凈化器有什麼處罰 瀏覽:418
純凈水裡面有什麼 瀏覽:124
如何設置水星路由器ip地址過濾 瀏覽:357
飲水機桶裝水蓋子叫什麼 瀏覽:758
光敏樹脂剛度 瀏覽:86
濾芯扭不開怎麼辦 瀏覽:354