第四點:值棧是struts中數(shù)據(jù)存儲的對象,不應(yīng)該把它歸為攔截器的特點。
第五點:攔截器和過濾器都每次請求,匹配路徑每次請求都會執(zhí)行,我不知道過濾器只能在初始化時被調(diào)用的結(jié)論哪來的。
第六點:獲取Bean這又是spring的內(nèi)容,作為攔截器的特點來說不合適。并且,spring mvc攔截器之所以能夠獲取bean,是因為攔截器本身是由spring-mvc的上下文管理的。嚴格來說,filter只要能夠拿到spring上下文,同樣能夠獲取bean.
第五點:攔截器和過濾器都每次請求,匹配路徑每次請求都會執(zhí)行,我不知道過濾器只能在初始化時被調(diào)用的結(jié)論哪來的。
第六點:獲取Bean這又是spring的內(nèi)容,作為攔截器的特點來說不合適。并且,spring mvc攔截器之所以能夠獲取bean,是因為攔截器本身是由spring-mvc的上下文管理的。嚴格來說,filter只要能夠拿到spring上下文,同樣能夠獲取bean.
2017-11-11
第一點:攔截器是基于Java反射的?你從配置文件中讀取類的全限定名從而從構(gòu)建攔截器的類對象,如果你把這說成是攔截器的特點,那么,過濾器同樣也可以說成是基于Java反射的。
第三點:攔截器只對action請求起作用,而過濾器對所有請求起作用。這點完全是瞎講,不知道是誰總結(jié)的,攔截器的攔截請求的作用域最大為框架配置的請求作用范圍,同樣過濾器的范圍也完全取決于過濾器的攔截請求路徑的配置。拿spring mvc來講,如果你將dispatcherServlet的匹配路徑設(shè)置為/*,那么spring mvc的攔截請求范圍可以和filter一樣大,只是filter是容器本身實現(xiàn)的,優(yōu)先級高于框架。
第三點:攔截器只對action請求起作用,而過濾器對所有請求起作用。這點完全是瞎講,不知道是誰總結(jié)的,攔截器的攔截請求的作用域最大為框架配置的請求作用范圍,同樣過濾器的范圍也完全取決于過濾器的攔截請求路徑的配置。拿spring mvc來講,如果你將dispatcherServlet的匹配路徑設(shè)置為/*,那么spring mvc的攔截請求范圍可以和filter一樣大,只是filter是容器本身實現(xiàn)的,優(yōu)先級高于框架。
2017-11-11
攔截器和過濾器(總結(jié)的太好了,我復(fù)制一下)
①攔截器是基于java的反射機制的,而過濾器是基于函數(shù)回調(diào)。
②攔截器不依賴與servlet容器,過濾器依賴與servlet容器。
③攔截器只能對action請求起作用,而過濾器則可以對幾乎所有的請求起作用。
④攔截器可以訪問action上下文、值棧里的對象,而過濾器不能訪問。
⑤在action的生命周期中,攔截器可以多次被調(diào)用,而過濾器只能在容器初始化時被調(diào)用一次。
⑥攔截器可以獲取IOC容器中的各個bean,而過濾器就不行,這點很重要,在攔截器里注入一個service,可以調(diào)用業(yè)務(wù)邏輯
①攔截器是基于java的反射機制的,而過濾器是基于函數(shù)回調(diào)。
②攔截器不依賴與servlet容器,過濾器依賴與servlet容器。
③攔截器只能對action請求起作用,而過濾器則可以對幾乎所有的請求起作用。
④攔截器可以訪問action上下文、值棧里的對象,而過濾器不能訪問。
⑤在action的生命周期中,攔截器可以多次被調(diào)用,而過濾器只能在容器初始化時被調(diào)用一次。
⑥攔截器可以獲取IOC容器中的各個bean,而過濾器就不行,這點很重要,在攔截器里注入一個service,可以調(diào)用業(yè)務(wù)邏輯
2017-09-29
最新回答 / 慕無忌7233295
【蜘蛛俠TG@abin789】-5401【蜘蛛俠TG@abin789】-5402【蜘蛛俠TG@abin789】-5403【蜘蛛俠TG@abin789】-5404【蜘蛛俠TG@abin789】-5405【蜘蛛俠TG@abin789】-5406【蜘蛛俠TG@abin789】-5407【蜘蛛俠TG@abin789】-5408【蜘蛛俠TG@abin789】-5409【蜘蛛俠TG@abin789】-5410【蜘蛛俠TG@abin789】-5411【蜘蛛俠TG@abin789】-5412【蜘蛛俠TG@abin789】...
2017-09-25