1.不同類型的過濾器只能被對應(yīng)類型的請求所觸發(fā)。過濾器默認為request類型,而瀏覽器發(fā)送請求也是request類型的。同理,req.getRequestDispatcher().forward()、include()或forward、include的jsp標簽發(fā)送的請求分別是forward、include類型的請求,只能觸發(fā)對應(yīng)類型的過濾器(即執(zhí)行doFilter方法)
2.重定向:相當于瀏覽器發(fā)送了兩次不同的請求,所以瀏覽器的URL會改變,而且是request類型的請求。
轉(zhuǎn)向:是服務(wù)器內(nèi)部自己發(fā)送的新請求,瀏覽器并不知道這個新請求,故URL不變
2.重定向:相當于瀏覽器發(fā)送了兩次不同的請求,所以瀏覽器的URL會改變,而且是request類型的請求。
轉(zhuǎn)向:是服務(wù)器內(nèi)部自己發(fā)送的新請求,瀏覽器并不知道這個新請求,故URL不變
2017-09-05
可以這樣理解,,去一個網(wǎng)頁可以通過 request 請求和 請求轉(zhuǎn)發(fā)。。。通過過濾器的時候他會判斷你是通過request還是請求轉(zhuǎn)發(fā)覺得要不要讓你走過濾器。(過濾器是什么過濾器,也就是這節(jié)課講的過濾器的分類)
2017-09-02
@WebFilter(filterName = "LoginFilter",
value = "/*",
initParams = {
@WebInitParam(name = "noLoginPaths", value = "login.jsp;fail.jsp;LoginServlet"),
@WebInitParam(name = "charset", value = "UTF-8")
})
value = "/*",
initParams = {
@WebInitParam(name = "noLoginPaths", value = "login.jsp;fail.jsp;LoginServlet"),
@WebInitParam(name = "charset", value = "UTF-8")
})
2017-08-29
本課在servlet3.0 中使用注解的方式配置是:
@WebFilter(filterName = "LoginFilter",
value = "/success.jsp",
initParams = {
@WebInitParam(name = "noLoginPaths", value = "login.jsp;fail.jsp;LoginServlet")
})
@WebFilter(filterName = "LoginFilter",
value = "/success.jsp",
initParams = {
@WebInitParam(name = "noLoginPaths", value = "login.jsp;fail.jsp;LoginServlet")
})
new String(username.getBytes("ISO-8859-1"),"UTF-8"); //改變字符串的編碼
request.setCharacterEncoding("UTF-8");
也可以直接在過濾器中設(shè)置 charset = "UTF-8";
request.setCharacterEncoding("UTF-8");
也可以直接在過濾器中設(shè)置 charset = "UTF-8";
2017-08-28
過濾器的生命周期和Servlet的生命周期類似,都是起始于服務(wù)器啟動,終于服務(wù)器關(guān)閉。
過濾器的生命周期
1. 實例化:啟動服務(wù)器時加載過濾器的實例
2. 初始化:調(diào)用init()方法來初始化實例
3. 執(zhí)行過濾:doFilter
4. 銷毀:服務(wù)器關(guān)閉時調(diào)用destory()方法進行銷毀
過濾器的生命周期
1. 實例化:啟動服務(wù)器時加載過濾器的實例
2. 初始化:調(diào)用init()方法來初始化實例
3. 執(zhí)行過濾:doFilter
4. 銷毀:服務(wù)器關(guān)閉時調(diào)用destory()方法進行銷毀
2017-08-28
過濾器和攔截器是不同的,過濾器基于servlet,攔截器基于Spring MVC??梢钥匆幌逻@篇博客。http://blog.csdn.net/chenleixing/article/details/44573495
2017-08-28