日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

框架:Spring Aop、拦截器、过滤器的区别

發布時間:2025/3/21 javascript 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 框架:Spring Aop、拦截器、过滤器的区别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Spring?Aop、攔截器、過濾器的區別

Filter過濾器:攔截web訪問的url地址。

Interceptor攔截器:攔截以.action結尾的url,攔截Action的訪問

Spring AOP攔截器:只能攔截Spring管理的Bean的訪問(業務層Service)


Spring AOP

Spring AOP,是AOP的一種實現,使用的是代理模式。

Filter

Filter(過濾器)是J2EE的規范,Servlet2.3開始引入/實現的是職責鏈模式。Filter可以用來設置字符集、控制權限、控制轉向等等。Filter也是AOP的一種實現。

Interceptor

Interceptor (攔截器),是Struct2中的概念同樣是AOP的一種實現。


攔截器和過濾器的區別:

?

  1、攔截器是基于Java的反射機制,過濾器是基于java的函數回調

?

  2、攔截器不依賴于servlet容器,而過濾器依賴于servlet容器

?

  3、攔截器只能對action請求起作用,過濾器幾乎對所有的請求起作用

?

  4、攔截器可以訪問action上下文,值棧里的對象,而過濾器不能訪問

?

  5、在action生命周期中,攔截器可以被多次調用,過濾器只能在servlet容器初始化時候調用一次

?

  6、攔截器可以獲取IOC容器中的各個bean,過濾器不行,在攔截器中注入一個service可以調用邏輯業務


攔截器:

Servlet中的過濾器Filter是實現了統一設置編碼,簡化操作;同時還可進行邏輯判斷,如用戶是否已經登陸、有沒有權限訪問該頁面等等工作。它是隨你的web應用啟動而啟動的,只初始化一次,以后就可以攔截相關請求,只有當你的web應用停止或重新部署的時候才銷毀

?

過濾器:

攔截器是在面向切面編程中應用的,就是在你的service或者一個方法前調用一個方法,或者在方法后調用一個方法。是基于JAVA的反射機制。攔截器不是在web.xml,比如struts在struts.xml中配置,

?總結:

1.過濾器:所謂過濾器顧名思義是用來過濾的,在Java web中,你傳入的request,response提前過濾掉一些信息,或者提前設置一些參數,然后再傳入servlet或者struts的action進行業務邏輯,比如過濾掉非法url(如果用戶沒有登陸,不是login.do的地址請求都過濾掉),或者在傳入servlet或者struts的action前統一設置字符集,或者去除掉一些非法字符(聊天室經常用到的,一些罵人的話)。filter流程是線性的, url傳來之后,檢查之后,可保持原來的流程繼續向下執行,被下一個filter, servlet接收等.

?

2.java的攔截器 主要是用在插件上,擴展件上比如 hibernate spring struts2等 有點類似面向切片的技術,在用之前先要在配置文件即xml文件里聲明一段的那個東西。

總結

以上是生活随笔為你收集整理的框架:Spring Aop、拦截器、过滤器的区别的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。