第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

關(guān)于過濾器和重定向請求執(zhí)行順序的問題

FirstFilter.java

	@Override
	public?void?doFilter(ServletRequest?arg0,?ServletResponse?arg1,?FilterChain?arg2)
			throws?IOException,?ServletException?{
		System.out.println("Start.....doFilter----FirstFilter");
		//?arg2.doFilter(arg0,?arg1);
		HttpServletRequest?req?=?(HttpServletRequest)?arg0;
		HttpServletResponse?response2?=?(HttpServletResponse)?arg1;
		//?重定向
		response2.sendRedirect(req.getContextPath()?+?"/main.jsp");
		System.out.println("End.....doFilter----FirstFilter");
	}
	
	

web.xml

<welcome-file-list>

<welcome-file>index.jsp</welcome-file>

</welcome-file-list>


<filter>

<filter-name>FirstFilter</filter-name>

<filter-class>com.filter.FirstFilter</filter-class>

</filter>


<filter-mapping>

<filter-name>FirstFilter</filter-name>

<url-pattern>/index.jsp</url-pattern>

</filter-mapping>


<filter-mapping>

<filter-name>FirstFilter</filter-name>

<url-pattern>/main.jsp</url-pattern>

<dispatcher>FORWARD</dispatcher>

</filter-mapping>


index.jsp

一個打印輸出語句

<%

System.out.println("index.jsp");

%>

main.jsp

一個打印輸出語句

<%

System.out.println("main.jsp");

%>

訪問工程下面的index.jsp,控制臺輸出的結(jié)果是

Start.....doFilter----FirstFilter

End.....doFilter----FirstFilter

main.jsp

為什么不是先

main.jsp

后輸出

End.....doFilter----FirstFilter

正在回答

2 回答

你可以把a(bǔ)rg2.doFilter(arg0,?arg1);的注釋給去掉,然后你就會看到

http://img1.sycdn.imooc.com//57a2097e0001ce9d02480082.jpg

1 回復(fù) 有任何疑惑可以回復(fù)我~

因為你main.jsp對應(yīng)的過濾器配置的是<dispatcher>FORWARD</dispatcher>,也就是說在執(zhí)行main.jsp的時候并沒有觸發(fā)過濾器,所以說Start.....doFilter----FirstFilter和End.....doFilter----FirstFilter只是執(zhí)行index.jsp觸發(fā)的,執(zhí)行完index.jsp的過濾器之后在加載main.jsp頁面,所以最后才打印出main.jsp。這是我的理解,有可能有錯誤,還請大家多指點


1 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

關(guān)于過濾器和重定向請求執(zhí)行順序的問題

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號