欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于aop技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法

文檔序號:6436029閱讀:240來源:國知局
專利名稱:一種基于aop技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法
技術(shù)領(lǐng)域
本發(fā)明涉及軟件開發(fā)領(lǐng)域,特別涉及應(yīng)用于軟件開發(fā)中的截獲方法等功能的領(lǐng)域。
背景技術(shù)
面向方法編程(AOP),可以通過預(yù)編譯方式和運(yùn)行期動態(tài)代理實(shí)現(xiàn)在不修改源代碼的情況下給程序動態(tài)統(tǒng)一添加功能的一種技術(shù)。AOP實(shí)際是GoF設(shè)計(jì)模式的延續(xù),設(shè)計(jì)模式孜孜不倦追求的是調(diào)用者和被調(diào)用者之間的解耦,AOP可以說也是這種目標(biāo)的一種實(shí)現(xiàn)。 利用AOP可以對業(yè)務(wù)邏輯的各個部分進(jìn)行隔離,從而使得業(yè)務(wù)邏輯各部分之間的耦合度降低,提高程序的可重用性,同時提高了開發(fā)的效率。系統(tǒng)開發(fā)過程中,存在一些與業(yè)務(wù)無關(guān),卻為業(yè)務(wù)模塊所共同調(diào)用的邏輯或責(zé)任, 例如事務(wù)處理、日志管理、權(quán)限控制等。AOP能利用一種稱為“橫切”的技術(shù),剖解開封裝的對象內(nèi)部,并將那些影響了多個類的行為封裝到一個可重用模塊,便于減少系統(tǒng)的重復(fù)代碼,降低模塊間的耦合度,并有利于未來的可操作性和可維護(hù)性。

發(fā)明內(nèi)容
本發(fā)明的目的在于提供一套有效的方法來使AOP截獲更加的高效和簡潔,通過在配置文件中配置AOP使得本發(fā)明較其他同類發(fā)明更加的靈活,而且提供其他發(fā)明所不具備的WCF (Windows通訊基礎(chǔ))攔截。本發(fā)明的又一目的是為了可以動態(tài)配置處理器,可以動態(tài)配置過濾攔截對象,可以動態(tài)配置處理器的順序。具備極大的靈活性,充分滿足各種開發(fā)需求。為此,本發(fā)明公開了一種基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法。所述基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法步驟如下步驟一、在業(yè)務(wù)處理方法上設(shè)置AOP中提供的屬性,并將屬性進(jìn)行標(biāo)記,標(biāo)記為新創(chuàng)建或共享;步驟二、對客戶端執(zhí)行的業(yè)務(wù)處理進(jìn)行攔截,分析業(yè)務(wù)處理方法的屬性標(biāo)記,當(dāng)事務(wù)標(biāo)識為新創(chuàng)建時,創(chuàng)建事務(wù)環(huán)境,并將當(dāng)前創(chuàng)建的事務(wù)環(huán)境保存進(jìn)堆棧;當(dāng)事務(wù)標(biāo)識為共享時,直接獲取當(dāng)前事務(wù)環(huán)境,并保存進(jìn)堆棧;步驟三、處理所述業(yè)務(wù)處理方法,將業(yè)務(wù)處理方法記錄到日志中,若處理過程中出現(xiàn)的結(jié)果與要求偏離時,將出現(xiàn)的異?,F(xiàn)象記錄到日志中;步驟四、當(dāng)系統(tǒng)無法對業(yè)務(wù)處理方法進(jìn)行處理時,將當(dāng)前事務(wù)環(huán)境從堆棧中移除, 并將異常信息記錄到日志中;步驟五、將業(yè)務(wù)處理結(jié)果返回到客戶端,從堆棧中移除當(dāng)前事務(wù)環(huán)境,記錄調(diào)用日
O優(yōu)選的是,所述的基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法中,同時使用本地方法和WCF方法進(jìn)行攔截。
優(yōu)選的是,所述的基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法中,所述AOP 內(nèi)置組件包括截獲器和方面處理器。優(yōu)選的是,所述的基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法中,所述方面處理器包含事務(wù)處理器、日志處理器、異常處理器和開發(fā)人員自定義的方面處理器。優(yōu)選的是,所述的基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法中,AOP組件給本地方法和WCF方法提供相同的配置。優(yōu)選的是,所述的基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法中,在本地方法和WCF方法上添加AOP屬性。優(yōu)選的是,所述的基于AOP思想實(shí)現(xiàn)WCF攔截和本地?cái)r截的技術(shù)設(shè)計(jì)與實(shí)現(xiàn)方案中,使用WCF攔截之前需要啟動WCF服務(wù)。優(yōu)選的是,所述的基于AOP思想實(shí)現(xiàn)WCF攔截和本地?cái)r截的技術(shù)設(shè)計(jì)與實(shí)現(xiàn)方案中,步驟三中的偏離是根據(jù)軟件開發(fā)人員自定義的要求進(jìn)行比較。本發(fā)明的有益效果是通過本發(fā)明方法可以動態(tài)配置處理器,可以動態(tài)配置過濾攔截對象,可以動態(tài)配置處理器的順序。具備極大的靈活性,充分滿足各種開發(fā)需求。


附圖1為該發(fā)明一種基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法的流程圖。
具體實(shí)施例方式下面結(jié)合附圖對本發(fā)明做進(jìn)一步說明,以使本領(lǐng)域普通技術(shù)人員參照本說明書后能夠據(jù)以實(shí)施。如圖1所示,本發(fā)明的一種基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法,包括如下步驟步驟一、在正常方法和WCF方法中,配置AOP截獲器和方面處理器,截獲器包括本地截獲處理器和WCF截獲處理器,方面處理器包括事務(wù)處理器、日志處理器、異常處理器以及開發(fā)人員自定義的方面處理器;步驟二、在本地方法和WCF方法上添加AOP屬性,啟動WCF服務(wù);步驟三、在業(yè)務(wù)處理方法上設(shè)置AOP中提供的屬性,并將屬性進(jìn)行標(biāo)記,標(biāo)記為新創(chuàng)建或共享;步驟四、本地方法和WCF方法中的攔截器同時對客戶端執(zhí)行的業(yè)務(wù)處理進(jìn)行攔截,通過事務(wù)處理器分析業(yè)務(wù)處理方法的屬性標(biāo)記,當(dāng)事務(wù)標(biāo)識為新創(chuàng)建時,創(chuàng)建事務(wù)環(huán)境,并將當(dāng)前創(chuàng)建的事務(wù)環(huán)境保存進(jìn)堆棧;當(dāng)事務(wù)標(biāo)識為共享時,直接獲取當(dāng)前事務(wù)環(huán)境, 并保存進(jìn)堆棧;步驟五、處理所述業(yè)務(wù)處理方法,將業(yè)務(wù)處理方法記錄到日志中,若處理過程中, 檢測到出現(xiàn)的結(jié)果與開發(fā)人員定義的要求相偏離時,將出現(xiàn)的異?,F(xiàn)象記錄到日志中;步驟六、當(dāng)系統(tǒng)無法對業(yè)務(wù)處理方法進(jìn)行處理時,將當(dāng)前事務(wù)環(huán)境從堆棧中移除, 將異常信息記錄到日志中;
步驟七、將業(yè)務(wù)處理結(jié)果返回到客戶端,從堆棧中移除當(dāng)前事務(wù)環(huán)境,記錄調(diào)用日志。另一種實(shí)現(xiàn)形式是步驟一、在配置文件節(jié)點(diǎn)下增加AOP截獲器和方面處理器的配置擴(kuò)展,截獲器和方面處理器節(jié)點(diǎn)配置方式為AOP組件內(nèi)置;步驟二、配置AOP截獲器,AOP組件針對兩種部署方式(本地部署,WCF部署)各提供一個默認(rèn)實(shí)現(xiàn);步驟三、配置AOP方面處理器,在配置文件中配置事務(wù)處理器、日志處理器、異常處理器以及開發(fā)人員自定義的方面處理器;步驟四、配置WCF截獲切面處理,WCF截獲切面處理在操作契約的實(shí)現(xiàn)類上對操作實(shí)現(xiàn)方法增加相關(guān)配置;步驟五、配置本地的截獲切面處理,在操作方法上面增加正對本地方法的配置;步驟六、事物截獲處理器,WCF事務(wù)分布式傳播需要在配置文件中,開啟綁定協(xié)議中的事務(wù)流傳播選項(xiàng);步驟七、在操作契約的實(shí)現(xiàn)方法上增加事務(wù)流選項(xiàng)屬性和事務(wù)范圍屬性;步驟八、配置日志截獲處理器;步驟九、配置異常截獲處理器;步驟十、啟動WCF服務(wù);步驟十一、截獲BP方法,分析BP方法屬性標(biāo)記,事務(wù)標(biāo)識為新創(chuàng)建,則跳到步驟十二,標(biāo)識為共享,跳轉(zhuǎn)至步驟十三;步驟十二、創(chuàng)建事務(wù)環(huán)境,當(dāng)前創(chuàng)建的事務(wù)進(jìn)堆棧,跳轉(zhuǎn)至步驟十四;步驟十三、獲取當(dāng)前事務(wù)的上下文環(huán)境。跳轉(zhuǎn)至步驟十四。步驟十四、處理BP方法調(diào)用,記錄BP方法的日志,處理異常,跳轉(zhuǎn)至步驟十五,BP 調(diào)用方法發(fā)生異常,跳轉(zhuǎn)至步驟十六;步驟十五、處理異常信息,記錄日志。跳轉(zhuǎn)至步驟十七,AOP系統(tǒng)處理業(yè)務(wù)BP方法調(diào)用的上下文信息。步驟十六、BP方法調(diào)用發(fā)生異常,移除當(dāng)前事務(wù)上下文,拋出異常信息,記錄日志, AOP異常方面處理自動處理業(yè)務(wù)BP方法內(nèi)部的異常,異常方面處理器運(yùn)行需要依賴平臺異常處理組件;步驟十七、提交事務(wù)上下文,移除當(dāng)前事務(wù)上下文,記錄調(diào)用日志。盡管本發(fā)明的實(shí)施方案已公開如上,但其并不僅僅限于說明書和實(shí)施方式中所列運(yùn)用,它完全可以被適用于各種適合本發(fā)明的領(lǐng)域,對于熟悉本領(lǐng)域的人員而言,可容易地實(shí)現(xiàn)另外的修改,因此在不背離權(quán)利要求及等同范圍所限定的一般概念下,本發(fā)明并不限于特定的細(xì)節(jié)和這里示出與描述的圖例。
權(quán)利要求
1.一種基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法,其特征在于,包括以下步驟步驟一、在業(yè)務(wù)處理方法上設(shè)置AOP中提供的屬性,并將屬性進(jìn)行標(biāo)記,標(biāo)記為新創(chuàng)建或共享;步驟二、對客戶端執(zhí)行的業(yè)務(wù)處理進(jìn)行攔截,分析業(yè)務(wù)處理方法的屬性標(biāo)記,當(dāng)屬性標(biāo)記為新創(chuàng)建時,創(chuàng)建該新創(chuàng)建的業(yè)務(wù)處理方法的事務(wù)環(huán)境,并將當(dāng)前創(chuàng)建的事務(wù)環(huán)境保存進(jìn)堆棧;當(dāng)屬性標(biāo)記為共享時,直接獲取該新共享的業(yè)務(wù)處理方法的事務(wù)環(huán)境,并保存進(jìn)堆棧;步驟三、處理所述業(yè)務(wù)處理方法,將業(yè)務(wù)處理方法的處理過程記錄到日志中,若處理過程中出現(xiàn)的結(jié)果與預(yù)先設(shè)定的結(jié)果偏離時,將出現(xiàn)的異常現(xiàn)象記錄到日志中;步驟四、當(dāng)系統(tǒng)無法對業(yè)務(wù)處理方法進(jìn)行處理時,將當(dāng)前事務(wù)環(huán)境從堆棧中移除,并將異常信息記錄到日志中;步驟五、將業(yè)務(wù)處理結(jié)果返回到客戶端,從堆棧中移除當(dāng)前事務(wù)環(huán)境,記錄調(diào)用日志。
2.如權(quán)利要求1所述的基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法,其特征在于,同時使用本地方法和WCF方法進(jìn)行攔截。
3.如權(quán)利要求1所述的基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法,其特征在于,所述AOP內(nèi)置組件包括截獲器和方面處理器。
4.如權(quán)利要求3所述的基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法,其特征在于,所述方面處理器包含事務(wù)處理器、日志處理器和異常處理器。
5.如權(quán)利要求3所述的基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法,其特征在于,AOP組件給本地方法和WCF方法提供相同的配置。
6.如權(quán)利要求1所述的基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法,其特征在于,在本地方法和WCF方法上添加AOP屬性。
7.如權(quán)利要求1所述的基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法,其特征在于,使用WCF攔截之前需要啟動WCF服務(wù)。
8.如權(quán)利要求1所述的基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法,其特征在于,步驟三中的偏離是根據(jù)軟件開發(fā)人員自定義的要求進(jìn)行比較。
全文摘要
本發(fā)明公開了一種基于AOP技術(shù)進(jìn)行攔截來處理業(yè)務(wù)通用邏輯的方法。包括步驟在業(yè)務(wù)處理方法上設(shè)置AOP中提供的屬性,并將屬性進(jìn)行新創(chuàng)建或共享標(biāo)記,在對客戶端執(zhí)行的業(yè)務(wù)處理進(jìn)行攔截后分析業(yè)務(wù)處理方法的屬性標(biāo)記,當(dāng)事務(wù)標(biāo)識為新創(chuàng)建時,創(chuàng)建事務(wù)環(huán)境,當(dāng)事務(wù)標(biāo)識為共享時,直接獲取當(dāng)前事務(wù)環(huán)境,并將當(dāng)前事務(wù)環(huán)境都保存進(jìn)堆棧,然后所述業(yè)務(wù)處理方法進(jìn)行處理,記錄處理方法到日志中,若處理過程中出現(xiàn)的結(jié)果與要求偏離時,將出現(xiàn)的異?,F(xiàn)象記錄到日志中;將系統(tǒng)無法處理的事務(wù)環(huán)境移除,并將異常信息記錄到日志中;最后將業(yè)務(wù)處理結(jié)果返回到客戶端,移除當(dāng)前事務(wù)環(huán)境,記錄調(diào)用日志。本發(fā)明具備極大的靈活性,充分滿足各種開發(fā)需求。
文檔編號G06F9/46GK102508702SQ20111032192
公開日2012年6月20日 申請日期2011年10月20日 優(yōu)先權(quán)日2011年10月20日
發(fā)明者周松柏, 楊愛民 申請人:北京金和軟件股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
平乡县| 和林格尔县| 慈溪市| 凤阳县| 临泉县| 正蓝旗| 雷州市| 贵南县| 安吉县| 德庆县| 综艺| 博客| 庐江县| 凤城市| 五台县| 苗栗市| 什邡市| 漯河市| 大港区| 开封市| 万山特区| 进贤县| 康定县| 富源县| 融水| 西城区| 宁海县| 水富县| 绿春县| 济宁市| 建瓯市| 德兴市| 蛟河市| 邯郸市| 灌阳县| 阿勒泰市| 溧水县| 化德县| 静宁县| 广州市| 宁国市|