最新回答 / 落葉蕭蕭online
找到問(wèn)題了,dofilter方法中提供了參數(shù),參數(shù)用的arg0和agr1,我這里直接調(diào)用過(guò)程request和response肯定不行,需要寫的是參數(shù)名,請(qǐng)求和響應(yīng)都是以參數(shù)形式傳遞進(jìn)去的。。
2017-12-25
最贊回答 / 隱姓埋名的姓嚴(yán)的
1.一般filter都是一個(gè)鏈,web.xml 里面配置了幾個(gè)就有幾個(gè)。一個(gè)一個(gè)的連在一起?request -> filter1 -> filter2 ->filter3 -> …. -> request resource.2.chain.doFilter將請(qǐng)求轉(zhuǎn)發(fā)給過(guò)濾器鏈下一個(gè)filter , 如果沒(méi)有filter那就是你請(qǐng)求的資源
2017-12-17
已采納回答 / 慕慕0009918
你要非要這樣也可以的,只是原本要在servlet中傳入的數(shù)據(jù)要在過(guò)濾器里傳,之后才能判斷表單是否為空??紤]到過(guò)濾器的作用,和可能帶來(lái)的麻煩。這樣不合適。
2017-12-04
已采納回答 / freehappy
error過(guò)濾器需要做一些操作后才能訪問(wèn)到error-page,如果不需要過(guò)濾操作,那也可以不要error過(guò)濾器
2017-12-03
建議看不太懂的人可以去看一下servlet和Jsp的章節(jié)課程,再回來(lái)看,可能要明白很多~
2017-11-28
沒(méi)聽(tīng)懂的人你得看仔細(xì)了。!代碼是很簡(jiǎn)單的,如果你覺(jué)得是因?yàn)榇a問(wèn)題,你可以暫停把代碼敲上去在來(lái)看!第一個(gè),關(guān)于main的死循環(huán),是因?yàn)镮ndex.jsp 是過(guò)濾器過(guò)濾的路徑之一,當(dāng)偵測(cè)到這個(gè)路徑的時(shí)候,就會(huì)執(zhí)行過(guò)濾器dofilter()中的方法,方法的主體在于把該頁(yè)面跳轉(zhuǎn)到main.jsp頁(yè)面,當(dāng)跳轉(zhuǎn)以后,因?yàn)閙ain.jsp也是過(guò)濾器的過(guò)濾路徑之一,所以就會(huì)產(chǎn)生死循環(huán)。第二個(gè)問(wèn)題,關(guān)于這節(jié),主要是告訴你們能夠觸發(fā)過(guò)濾器的四種description標(biāo)簽屬性,request,include,forword,error;主要是講解了如何觸發(fā)過(guò)濾器的。挺好的,不足就是在重定向和內(nèi)部轉(zhuǎn)發(fā)講的有點(diǎn)兒多
2017-11-28
Servlet 3.0 支持和提倡使用注解模式,所有在創(chuàng)建web工程時(shí)一般不主動(dòng)創(chuàng)建Web.xml。 可以直接在eclipse中創(chuàng)建filter,通過(guò)@WebFilter(String url) 來(lái)選擇過(guò)濾的路徑。
2017-11-28
doFilter()方法中的request參數(shù)要進(jìn)行轉(zhuǎn)換的原因:首先ServletRequest是HttpServletRequest的父接口,doFilter()方法中request類型定義為父接口的類型是為了接收到更多子接口的實(shí)現(xiàn)類對(duì)象(多態(tài)性),此處request強(qiáng)制轉(zhuǎn)換為HttpServletRequest是因?yàn)閭鬟^(guò)來(lái)的request對(duì)象本來(lái)就是HttpServletRequest的實(shí)現(xiàn)類對(duì)象。
此處用了多態(tài)性的性質(zhì)通過(guò)ServletRequest接收到了HttpServletRequest的實(shí)現(xiàn)類對(duì)象
轉(zhuǎn)換回HttpServletRequest類型的好處是,在運(yùn)行時(shí)可以用到更多的方法
此處用了多態(tài)性的性質(zhì)通過(guò)ServletRequest接收到了HttpServletRequest的實(shí)現(xiàn)類對(duì)象
轉(zhuǎn)換回HttpServletRequest類型的好處是,在運(yùn)行時(shí)可以用到更多的方法
2017-11-26