亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于AOP思想的過濾器技術(shù)及其應(yīng)用

        2016-03-18 03:12:29黃玲
        移動(dòng)信息 2016年5期
        關(guān)鍵詞:黃玲漁網(wǎng)調(diào)用

        黃玲

        ?

        基于AOP思想的過濾器技術(shù)及其應(yīng)用

        黃玲

        重慶工程學(xué)院,重慶 400056

        AOP為Aspect Oriented Programming的縮寫,意為面向切面編程。利用AOP可以對業(yè)務(wù)邏輯的各個(gè)部分進(jìn)行隔離,從而使得業(yè)務(wù)各部分之間的耦合度降低,提高程序的可重用性,同時(shí)提高了開發(fā)的效率。過濾器就應(yīng)用了這種思想在客戶端提交數(shù)據(jù)進(jìn)行業(yè)務(wù)邏輯出來之前對提交的數(shù)據(jù)進(jìn)行預(yù)處理。過濾器在生成系統(tǒng)日志,權(quán)限管理等方面有非常廣泛的應(yīng)用。

        AOP;面向切面編程;攔截器

        過濾器提供過濾作用,所謂過濾也就是說按照一定的規(guī)則放走一部分東西,而留下另一部分東西。形象地說,就像漁網(wǎng)。漁網(wǎng)有洞,比網(wǎng)洞大的魚被漁網(wǎng)留在網(wǎng)里,而比網(wǎng)洞小的魚則漏出漁網(wǎng),從而起到了攔住大魚,放掉小魚的目的。

        Java中的過濾器不能處理用戶請求,和對客戶端生成響應(yīng),它只提供過濾作用。主要用于對HttpServletRequest進(jìn)行預(yù)處理,攔截Request之后,提取用戶提交的數(shù)據(jù);也可以對HttpServletResponse進(jìn)行后處理,是個(gè)典型的處理鏈。一個(gè)web.xml文件中可以配置多過濾器,Web服務(wù)器按照它們在web.xml文件中的配置順序來加載這些過濾器。

        Servlet過濾器中結(jié)合了許多元素,從而使得過濾器成為獨(dú)特、強(qiáng)大和模塊化的Web組件。也就是說,Servlet過濾器是:

        聲明式的:通過Web部署中的XML標(biāo)簽來聲明。這樣允許添加和刪除過濾器,而無需改動(dòng)任何應(yīng)用程序代碼。

        動(dòng)態(tài)的:過濾器在運(yùn)行時(shí)由Servlet容器調(diào)用來攔截和處理請求和響應(yīng)。

        靈活的:它可用于對來自客戶機(jī)的直接調(diào)用執(zhí)行預(yù)處理、后期處理以及處理在防火墻之后的Web組件之間調(diào)度的請求。最后,可以將過濾器鏈接起來以提供必需的功能。

        模塊化的:通過把應(yīng)用程序處理邏輯封裝到單個(gè)類文件中,過濾器從而定義了可容易地從請求或響應(yīng)鏈中添加或刪除的模塊化單元[1]。

        可移植的:與Java平臺(tái)的其他許多方面一樣,Servlet過濾器是跨平臺(tái)和跨容器可移植的,從而進(jìn)一步支持了Servler過濾器的模塊化和可重用本質(zhì)。

        可重用的:歸功于過濾器實(shí)現(xiàn)類的模塊化設(shè)計(jì),以及聲明式的過濾器配置方式,過濾器可以容易地跨越不同的項(xiàng)目和應(yīng)用程序使用。

        透明的:過濾器可以根據(jù)需要添加或刪除,而不會(huì)破壞Servlet或JSP頁面。

        Servlet可以用來處理用戶請求。但是在用戶具體的請求的業(yè)務(wù)功能的同時(shí),系統(tǒng)有一些特殊的需求。比如確認(rèn)該用戶是否有權(quán)限提交該請求,這就是權(quán)限管理。對于有的系統(tǒng),所有的用戶請求都必須驗(yàn)證用戶是否有權(quán)限。這種驗(yàn)證往往是共通,如果在每次請求中進(jìn)行處理,不僅會(huì)產(chǎn)生大量的重復(fù)代碼,工作量大,效率低,而且質(zhì)量也無法保證。這時(shí)我們就可以用到過濾器了。過濾器攔截用戶請求,判斷用戶是否有權(quán)限來訪問這個(gè)資源。有則讓他去訪問,沒有就讓他轉(zhuǎn)到另外一個(gè)頁面。這樣通過過濾器就實(shí)現(xiàn)了授權(quán)管理。當(dāng)然過濾器不僅可以完成用戶驗(yàn)證與權(quán)限管理,還有其他許多的用途。比如:驗(yàn)證用戶提交的請求中有沒有不合法的文字、字符;統(tǒng)計(jì)Web應(yīng)用的訪問量和訪問的命中率,報(bào)告;實(shí)現(xiàn)Web應(yīng)用的日志處理功能;實(shí)現(xiàn)數(shù)據(jù)壓縮功能;對傳輸?shù)臄?shù)據(jù)進(jìn)行加密;實(shí)現(xiàn)XML文件的XSLT轉(zhuǎn)換等等。

        一個(gè)用戶請求,即一個(gè)Servlet可以有多個(gè)過濾器,以實(shí)現(xiàn)多個(gè)過濾邏輯[2]。

        所有的Servlet過濾器都必須實(shí)現(xiàn)javax.servlet. Filter接口,并實(shí)現(xiàn)該接口中的三個(gè)方法:init(Filter Config filter Config)。

        Servlet過濾器的初始化方法,Servlet容器創(chuàng)建Servlet過濾器實(shí)例后將調(diào)用該方法。該方法將讀取web.xml文件中Servlet過濾器的初始化參數(shù)。doFilter(ServletRequest request,ServletResponse response,F(xiàn)ilterChain chain).

        該方法完成實(shí)際的過濾操作,當(dāng)客戶端請求方法與過濾器設(shè)置匹配的URL時(shí),Servlet容器將先調(diào)用過濾器的doFilter方法,F(xiàn)ilterChain用戶訪問后續(xù)過濾器。

        destroy()

        在Web容器卸載過濾器前被調(diào)用。該方法在Filter的生命周期中僅執(zhí)行一次,可以釋放過濾器使用的資源。

        圖1 過濾的執(zhí)行流程

        過濾器的執(zhí)行流程如圖所示,過濾器的處理過程是一個(gè)鏈?zhǔn)降倪^程(FilterChain),即多個(gè)過濾器組成一個(gè)鏈,依次處理,先處理第一個(gè)過濾器的doFilter()方法中的chain.doFilter()方法之前的內(nèi)容,即圖中左邊大矩形中的“Code1”。之后通過chain.doFilter()方法將控制權(quán)交給下一個(gè)過濾器,執(zhí)行下一個(gè)過濾器的doFilter()方法中的chain.doFilter()方法之前的內(nèi)容,即圖中中間大矩形中的“Code1”。以此類推,最后交給Servlet,執(zhí)行Servlet的service()方法。service()方法執(zhí)行完以后,控制權(quán)再交回給最后一個(gè)過濾器,執(zhí)行過濾器的doFilter()方法中的chain.doFilter()方法之后的內(nèi)容,即圖中右邊大矩形中的“Code2”,之后再回到倒數(shù)第二個(gè)過濾器,執(zhí)行過濾器的doFilter()方法中的chain.doFilter()方法之后的內(nèi)容。以此類推,最后返回客戶端,在畫面上顯示請求結(jié)果[3]。其中鏈?zhǔn)竭^濾過程中也可以直接給出響應(yīng),即返回客戶端,而不是向后傳遞。

        [1]陳敏,唐溢鍵,周新志.用Servlet過濾器簡化中文的輸入和輸出[J].成都信息工程學(xué)院學(xué)報(bào),2005,20(2):129-133.

        [2]謝志華.深入Java Servlet網(wǎng)絡(luò)編程[M].西安:西安電子科技大學(xué)出版社,2004.

        [3]柳永坡,劉雪梅,趙長海.JSP應(yīng)用開發(fā)技術(shù)[M].北京:人民郵電出版社,2005.

        黃玲(1980—),女,漢族,上海交通大學(xué)計(jì)算機(jī)及工商管理雙學(xué)士學(xué)位,具備多年的對日開發(fā)經(jīng)驗(yàn),具備較強(qiáng)的日語、英語能力,2006年9月赴日從事軟件開發(fā)工作,從事J2EE應(yīng)用項(xiàng)目、嵌入式系統(tǒng),手機(jī)軟件開發(fā)等。

        TP311.52

        A

        1009-6434(2016)05-0049-01

        猜你喜歡
        黃玲漁網(wǎng)調(diào)用
        替婚
        金山(2022年4期)2022-04-09 16:54:11
        爸爸的漁網(wǎng)
        王子尋寶
        核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
        透視漁網(wǎng)
        LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
        “漁網(wǎng)”來了,快跑!
        Asymptotics and Blow-up for M ass Critical Nonlinear Disp ersive Equations?
        基于系統(tǒng)調(diào)用的惡意軟件檢測技術(shù)研究
        獨(dú)創(chuàng)的漁網(wǎng)
        亚洲av少妇一区二区在线观看| 天堂影院一区二区三区四区| 醉酒后少妇被疯狂内射视频 | 色爱无码A V 综合区| 青青草极品视频在线播放| 日本午夜伦理享色视频| 亚洲麻豆视频免费观看| 国产a国产片国产| 黑人玩弄人妻中文在线| 亚洲一区区| 日本高清人妻一区二区| 国产桃色一区二区三区| 亚洲人成影院在线无码按摩店| 亚洲av之男人的天堂网站| 亚洲国产成人手机在线电影| 亚洲最黄视频一区二区| 日韩人妻久久中文字幕| 俺去啦最新地址| 一本无码人妻在中文字幕免费 | 欧美寡妇xxxx黑人猛交| 亚洲精品无码av片| 中国老太老肥熟女视频 | 东京热日本av在线观看| 在线看无码的免费网站| 一本一本久久a久久精品综合麻豆| 久国产精品久久精品国产四虎| 一区二区三区日韩毛片| av天堂精品久久综合网| 国产精品无码一区二区在线看| 亚洲AV永久无码精品导航| 日韩av免费在线不卡一区| 一本久久精品久久综合| 国产无套粉嫩白浆在线观看| 99久久国产综合精品麻豆 | 无码一区二区三区网站| 亚洲国产综合精品一区最新| 尤物yw午夜国产精品视频| 人妻夜夜爽天天爽一区| 911国产在线观看精品| 国产91久久精品成人看网站| 欧洲美熟女乱又伦av影片|