導航:首頁 > 凈水問答 > 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相關的資料

熱點內容
污水處理廠用的什麼閥門 瀏覽:877
污水處理經營管理合同 瀏覽:872
志高下置式飲水機質量怎麼樣 瀏覽:684
保溫瓶如何除垢 瀏覽:234
高濃度印染廢水處理設備 瀏覽:228
耐鹽霧u樹脂 瀏覽:532
java過濾bom頭 瀏覽:351
關於建設污水廠項目資金申請 瀏覽:1000
花園廢水利用 瀏覽:143
如何用喝完的可樂瓶子做凈水器 瀏覽:212
超濾的進水懸浮物濃度多少 瀏覽:299
一壺水加多少除垢劑 瀏覽:839
名爵汽車凈水怎麼擦乾 瀏覽:416
果酒生產廢水處理 瀏覽:347
江門小區污水處理多少錢 瀏覽:776
德龍除垢劑替代 瀏覽:777
反滲透膜制純水 瀏覽:284
河南反滲透凈水設備 瀏覽:463
建設局和污水廠什麼聯系 瀏覽:384
五指山污水處理廠在哪裡 瀏覽:861