<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 176, comments - 240, trackbacks - 0, articles - 7

    AOP的應(yīng)用

    Posted on 2009-12-13 11:34 canonical 閱讀(1525) 評論(0)  編輯  收藏 所屬分類: Witrix開發(fā)平臺

         AOP(Aspect Oriented Programming)早已不是什么新鮮的概念,但有趣的是,除了事務(wù)(transaction), 日志(Log)等寥寥幾個樣板應(yīng)用之外,我們似乎找不到它的用武之地。http://canonical.javaeye.com/blog/34941 很多人的疑惑是我直接改代碼就行了,干嗎要用AOP呢?AOP的定義和實現(xiàn)那么復(fù)雜,能夠提供什么特異的價值呢?
        Witrix平臺依賴于AOP概念來完成領(lǐng)域模型抽象與模型變換,但是在具體的實現(xiàn)方式上,卻與常見的AOP軟件包有著很大差異。http://canonical.javaeye.com/blog/542622 AOP的具體技術(shù)內(nèi)容包括定位和組裝兩個部分。簡化切點定位方式和重新規(guī)劃組裝空間,是Witrix中有效使用AOP技術(shù)的前提。
        在Witrix平臺中,對于AOP技術(shù)的一種具體應(yīng)用是支持產(chǎn)品的二次開發(fā)。在產(chǎn)品的實施過程中,經(jīng)常需要根據(jù)客戶的特定需求,修改某些函數(shù)的實現(xiàn)。我們 可以選擇在主版本代碼中不斷追加相互糾纏的if-else語句,試圖去包容所有已知和未知的應(yīng)用場景。我們也可以選擇主版本代碼和定制代碼獨立開發(fā)的方 式,主版本代碼實現(xiàn)邏輯框架,定制代碼通過AOP機制與主版本代碼融合,根據(jù)具體場景要求對主版本功能進行修正。AOP的這種應(yīng)用與所謂的橫切概念是有所 區(qū)別的。典型的,一個橫切的切點會涉及到很多類的很多方法,而函數(shù)定制則往往要求準確定位到某個業(yè)務(wù)對象的某個特定的業(yè)務(wù)方法上。傳統(tǒng)AOP技術(shù)的切點定 義方式并不適合這種精確的單點定位。在Witrix平臺中,我們通過直接的名稱映射來定義切點。例如,修正spring中注冊的MyObject對象的 myFunc方法,可以在app.aop.xml文件中增加如下標簽

    <myObject.myFunc>
          在原函數(shù)執(zhí)行之前執(zhí)行
          
    <aop:Proceed/> <!-- 執(zhí)行原函數(shù)內(nèi)容 -->
          在原函數(shù)執(zhí)行之后執(zhí)行
    </myObject.myFunc>


    [spring對象名.方法名]這種映射方法比基于正則字符串匹配的方式要簡單明確的多。spring容器本身已經(jīng)實現(xiàn)了對象的全局管理功能,spring對象名稱必然是唯一的,公開發(fā)布的,相互之間不沖突的,沒有必要再通過匹配運算重新發(fā)現(xiàn)出它的唯一性。
       對于一些確實存在的橫切需求,我們可以通過Annotation機制來實現(xiàn)切點坐標標定,將復(fù)雜的切點匹配問題重新劃歸為[對象名.方法名]。

    @AopClass({"myObject","otherObject"})
      class SomeClass{
         @AopMethod({"myFunc","otherFunc"})
         void someFunc(){}
      }

     

    針對以上對象,在app.aop.xml文件中可以定義

    <I-myObject.I-myFunc>
       .
    </I-myObject.I-myFunc>

    主站蜘蛛池模板: 免费在线观看自拍性爱视频| 亚洲另类无码专区丝袜| 99久久婷婷免费国产综合精品| 国产色婷婷精品免费视频| 亚洲大成色www永久网址| 免费无码黄十八禁网站在线观看| 国产精品亚洲综合五月天| 国产又黄又爽又猛免费app| 亚洲av午夜精品无码专区| 最近最好的中文字幕2019免费| 亚洲欧洲专线一区| 亚洲Av无码国产情品久久| 亚洲免费在线观看| 亚洲av永久无码精品网站| 99爱在线精品视频免费观看9| 亚洲熟妇无码爱v在线观看| 好男人视频社区精品免费| 无码色偷偷亚洲国内自拍| 亚洲无码高清在线观看| 免费无码又爽又刺激一高潮| 亚洲福利一区二区三区| 四虎影视大全免费入口| 成在线人直播免费视频| 久久久亚洲欧洲日产国码aⅴ| 亚洲天堂免费在线| 色噜噜狠狠色综合免费视频| 亚洲日产韩国一二三四区| 亚洲一区二区三区免费视频| 亚洲欧美日韩自偷自拍| 国产亚洲日韩在线三区| 69影院毛片免费观看视频在线| 亚洲欧洲无码AV不卡在线| 国产亚洲精品免费视频播放 | 国产av无码专区亚洲国产精品| 最近免费mv在线观看动漫 | 亚洲片国产一区一级在线观看 | 中文字幕专区在线亚洲| 午夜免费1000部| 特级无码毛片免费视频| 91在线亚洲精品专区| 亚洲AV网站在线观看|