今天高清视频免费播放动漫,天天爽夜爽免费精品视频,精品国产免费第一区二区,《爆乳女教师BD高清》

當(dāng)前位置: 首頁 > 講師博客 > 講師博文
廣告1
內(nèi)置攔截器說明
時間:2015-04-25     作者:

 理解攔截器

1.1.    什么是攔截器:

攔截器,在AOP(Aspect-Oriented Programming)中用于在某個方法或字段被訪問之前,進(jìn)行攔截然后在之前或之后加入某些操作。攔截是AOP的一種實(shí)現(xiàn)策略。

在Webwork的中文文檔的解釋為——攔截器是動態(tài)攔截Action調(diào)用的對象。它提供了一種機(jī)制可以使開發(fā)者可以定義在一個action執(zhí)行的前后執(zhí)行的代碼,也可以在一個action執(zhí)行前阻止其執(zhí)行。同時也是提供了一種可以提取action中可重用的部分的方式。

談到攔截器,還有一個詞大家應(yīng)該知道——攔截器鏈(Interceptor Chain,在Struts 2中稱為攔截器棧Interceptor Stack)。攔截器鏈就是將攔截器按一定的順序聯(lián)結(jié)成一條鏈。在訪問被攔截的方法或字段時,攔截器鏈中的攔截器就會按其之前定義的順序被調(diào)用。

1.2.    攔截器的實(shí)現(xiàn)原理:

大部分時候,攔截器方法都是通過代理的方式來調(diào)用的。Struts 2的攔截器實(shí)現(xiàn)相對簡單。當(dāng)請求到達(dá)Struts 2的ServletDispatcher時,Struts 2會查找配置文件,并根據(jù)其配置實(shí)例化相對的攔截器對象,然后串成一個列表(list),最后一個一個地調(diào)用列表中的攔截器。

2.    攔截器的配置

Struts 2已經(jīng)為您提供豐富多樣的,功能齊全的攔截器實(shí)現(xiàn)。大家可以至struts2的jar包內(nèi)的struts-default.xml查看關(guān)于默認(rèn)的攔截器與攔截器鏈的配置。

Struts2(XWork)提供的攔截器的功能說明: 
攔截器

名字

說明

1、攔截器:Alias Interceptor

     名字:alias

     說明:在不同請求之間將請求參數(shù)在不同名字件轉(zhuǎn)換,請求內(nèi)容不變

2、攔截器:Chaining Interceptor

      名字:chain

      說明:讓前一個Action的屬性可以被后一個Action訪問,現(xiàn)在和chain類型的result()結(jié)合使用。

3、攔截器:Checkbox Interceptor

     名字:checkbox
   
      說明:添加了checkbox自動處理代碼,將沒有選中的checkbox的內(nèi)容設(shè)定為false,而html默認(rèn)情況下不提交沒有選中的checkbox。

4、攔截器:Cookies Interceptor

     名字:cookies

     說明:使用配置的name,value來是指cookies

5、攔截器:Conversion Error Interceptor

      名字:conversionError

      說明:將錯誤從ActionContext中添加到Action的屬性字段中。

6、攔截器:Create Session Interceptor

      名字:createSession

      說明:自動的創(chuàng)建HttpSession,用來為需要使用到HttpSession的攔截器服務(wù)。

7、攔截器:Debugging Interceptor

      名字:debugging

      說明:提供不同的調(diào)試用的頁面來展現(xiàn)內(nèi)部的數(shù)據(jù)狀況。

8、攔截器:Execute and Wait Interceptor

      名字:execAndWait

      說明:在后臺執(zhí)行Action,同時將用戶帶到一個中間的等待頁面。

9、攔截器:Exception Interceptor

     名字:exception

      說明:將異常定位到一個畫面

10、攔截器:File Upload Interceptor

       名字:fileUpload

        說明:提供文件上傳功能

11、攔截器:I18n Interceptor

        名字:i18n

        說明:記錄用戶選擇的locale

12、攔截器:Logger Interceptor 

        名字:logger

       說明:輸出Action的名字

13、攔截器:Message Store Interceptor

       名字:store

        說明:存儲或者訪問實(shí)現(xiàn)ValidationAware接口的Action類出現(xiàn)的消息,錯誤,字段錯誤等。

14、攔截器:Model Driven Interceptor

       名字:model-driven

        說明:如果一個類實(shí)現(xiàn)了ModelDriven,將getModel得到的結(jié)果放在Value Stack中。

15、攔截器:Scoped Model Driven

       名字:scoped-model-driven

       說明:如果一個Action實(shí)現(xiàn)了ScopedModelDriven,則這個攔截器會從相應(yīng)的Scope中取出model調(diào)用Action的setModel方法將其放入Action內(nèi)部。

16、攔截器:Parameters Interceptor

        名字:params

         說明:將請求中的參數(shù)設(shè)置到Action中去。

17、攔截器:Prepare Interceptor

       名字:prepare

        說明:如果Acton實(shí)現(xiàn)了Preparable,則該攔截器調(diào)用Action類的prepare方法。

18、攔截器:Scope Interceptor

       名字:scope

        說明:將Action狀態(tài)存入session和application的簡單方法。

19、攔截器:Servlet Config Interceptor

        名字:servletConfig

        說明:提供訪問HttpServletRequest和HttpServletResponse的方法,以Map的方式訪問。

20、攔截器:Static Parameters Interceptor

        名字:staticParams

        說明:從struts.xml文件中將中的中的內(nèi)容設(shè)置到對應(yīng)的Action中。

21、攔截器:Roles Interceptor

        名字:roles

         說明:確定用戶是否具有JAAS指定的Role,否則不予執(zhí)行。

22、攔截器:Timer Interceptor

       名字:timer

       說明:輸出Action執(zhí)行的時間

23、攔截器:Token Interceptor

        名字:token

        說明:通過Token來避免雙擊

24、攔截器:Token Session Interceptor

        名字:tokenSession

        說明:和Token Interceptor一樣,不過雙擊的時候把請求的數(shù)據(jù)存儲在Session中

25、攔截器:Validation Interceptor

        名字:validation

        說明:使用action-validation.xml文件中定義的內(nèi)容校驗(yàn)提交的數(shù)據(jù)。

26、攔截器:Workflow Interceptor

        名字:workflow

        調(diào)用Action的validate方法,一旦有錯誤返回,重新定位到INPUT畫面

27、攔截器:Parameter Filter Interceptor

       名字:N/A

        說明:從參數(shù)列表中刪除不必要的參數(shù)

28、攔截器:Profiling Interceptor

        名字:profiling

        說明:通過參數(shù)激活profile


在struts.xml文件中定義攔截器,攔截器棧: 

        

        

        

        

        

             

             

        

        

        ......

咨詢電話:
0571-86155444
咨詢熱線:
  • 微信:13857108608
聯(lián)系我們
<var id="zybgy"><center id="zybgy"></center></var>
<form id="zybgy"><strong id="zybgy"><acronym id="zybgy"></acronym></strong></form>

    <ul id="zybgy"></ul>
  • 主站蜘蛛池模板: 泰宁县| 咸阳市| 东乡族自治县| 会东县| 罗定市| 香港| 道孚县| 仁怀市| 镇雄县| 玛多县| 荣昌县| 新田县| 纳雍县| 奉节县| 辽阳市| 安阳市| 长武县| 侯马市| 扶风县| 淮滨县| 合作市| 远安县| 东辽县| 滨海县| 醴陵市| 临湘市| 新化县| 孝感市| 钟祥市| 武胜县| 崇阳县| 仙居县| 凌源市| 高阳县| 闻喜县| 枣阳市| 沁阳市| 福贡县| 寻甸| 牡丹江市| 清远市|