邊城愚人

          如果我不在邊城,我一定是在前往邊城的路上。

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            31 隨筆 :: 0 文章 :: 96 評(píng)論 :: 0 Trackbacks

          AOP

               摘要: 在結(jié)束了上一篇Spring 1.x中AOP的使用之后,我用馬不停蹄的打開Eclipse,做著Spring2.X下了AOP的Sample。在上一篇文章中的配置過程中,由于對(duì)自動(dòng)代理不是很熟,出現(xiàn)了循環(huán)引用的異常信息。當(dāng)初在閱讀PicoContainer源碼時(shí)看到循環(huán)引用不以為然,后來在學(xué)習(xí)AspectJ時(shí)小有印象,這次在折騰了半個(gè)多小時(shí)后可加深了印象。  閱讀全文
          posted @ 2007-08-30 08:42 kafka0102 閱讀(2306) | 評(píng)論 (2)  編輯

               摘要: 本文通過一個(gè)“Hello World”級(jí)別的橫切性功能介紹Spring1.X中AOP的使用,并結(jié)合Spring的經(jīng)典的聲明式事務(wù)管理給出Spring AOP配置中的經(jīng)典方案。在Spring2出來以后,Spring1.X的AOP使用方式已經(jīng)“不合時(shí)宜”了,因此如果你是在新項(xiàng)目中采用Spring AOP,建議使用Spring2中的AOP使用方式。關(guān)于Spring2.X中AOP的使用,參考該文的姊妹文章Spring2.X中AOP的使用。

          一提到AOP的應(yīng)用,人們就會(huì)本能地提起日志功能,它就像一門語言的“Hello World”一樣被人們無數(shù)次提起。也許有人會(huì)疑問除了“不實(shí)用”的日志功能,AOP還能做些什么?可能在很多時(shí)候我們并不需要自己實(shí)現(xiàn)一個(gè)AOP功能,尤其是在擁有了很多優(yōu)秀的AOP應(yīng)用框架來解決通用的橫切性問題的情況下(比如Spring的事務(wù)管理、比如Acegi的安全管理、比如WebWork的攔截功能)。但問題總是層出不窮的,總會(huì)有些問題可能需要我們自己AOP一下。  閱讀全文
          posted @ 2007-08-30 08:38 kafka0102 閱讀(2371) | 評(píng)論 (1)  編輯

               摘要: call和execution的指示符分別為call(Method-Signature)、execution(Method-Signature),匹配方法簽名的方法或構(gòu)造函數(shù)的執(zhí)行。對(duì)于call來說,調(diào)用的連接點(diǎn)位于方法調(diào)用點(diǎn)的調(diào)用代碼處;對(duì)于execution來說,執(zhí)行的連接點(diǎn)位于方法執(zhí)行的位置。也就是說,call和execution的重要區(qū)別在于它們傳遞了哪些類型給AspectJ編譯器以用來與aspect進(jìn)行鏈接。  閱讀全文
          posted @ 2007-07-12 09:50 kafka0102 閱讀(4176) | 評(píng)論 (6)  編輯

               摘要: target切入點(diǎn)格式如下:target([Type|Identifier])。Type指示對(duì)連接點(diǎn)處的對(duì)象類型提供一個(gè)靜態(tài)編譯時(shí)評(píng)估,并采用完全限定類名的形式(也就是說,Type不能是使用通配符的類型聲明模式)。Identifier提供了一種方法,可通過它來評(píng)估連節(jié)點(diǎn)處的運(yùn)行時(shí)對(duì)象的實(shí)際類型,而不僅僅是靜態(tài)類型。 Identifier在運(yùn)行時(shí)動(dòng)態(tài)地賦予合適的對(duì)象。  閱讀全文
          posted @ 2007-07-09 09:17 kafka0102 閱讀(2718) | 評(píng)論 (3)  編輯

               摘要: 讓我好好想想,AspectJ中最常用的切入點(diǎn)是什么?哦,也許是call(Method-Signature)吧。這是個(gè)相對(duì)簡單的方法簽名。實(shí)際上,方法簽名的完整形式如下:

          [modifiers] [returnTypePattern] [DeclaredTypePattern.]methodName([Parameters])[throws TypePattern],其中方括號(hào)中的簽名組件是可選的。modifiers 為修飾符模式,returnTypePattern 為返回類型模式,DeclaredTypePattern 為類型聲明模式,methodName 為方法名稱,Parameters 為方法參數(shù),throws TypePattern 為throw字句。該文僅僅介紹 DeclaredTypePattern,因?yàn)橄啾戎缕渌J奖容^簡單的多。

            閱讀全文
          posted @ 2007-07-07 14:54 kafka0102 閱讀(1762) | 評(píng)論 (2)  編輯

          主站蜘蛛池模板: 曲阜市| 含山县| 鄂尔多斯市| 云霄县| 高雄县| 平南县| 西林县| 沙田区| 牙克石市| 镇远县| 达日县| 许昌市| 谢通门县| 鹤庆县| 临海市| 寿阳县| 本溪市| 天峻县| 赞皇县| 延川县| 松桃| 丹凤县| 红安县| 齐齐哈尔市| 建德市| 唐海县| 道孚县| 长汀县| 永胜县| 缙云县| 甘洛县| 奈曼旗| 乌什县| 清水河县| 北海市| 安岳县| 通州市| 昌邑市| 新田县| 丹江口市| 惠东县|