新四季網

一種基於策略配置的異常處理方法與流程

2023-06-10 22:31:11 1


本發明涉及計算機軟體技術領域,具體地說是一種基於策略配置的異常處理方法。



背景技術:

隨著軟體技術研究的不斷深入和網絡技術的廣泛應用,企業資源計劃(Enterprise Resource Planning,ERP)類的企業管理軟體也得到了廣泛的應用。但是隨著企業管理的模塊越來越多,管理的業務越來越複雜,其異常的處理就變為尤為重要。

編寫任何.NET程序,都會使用到異常處理。異常處理的操作可分為三類:引發異常、捕獲異常、處理異常。我們通常所說的錯誤,實際是指在程序中明確識別出含義的程序異常,並且由我們在程序中通過異常來向上引發的。如果是單一的根據異常的類型對異常進行處理,會將異常處理變得複雜,不利於高效的開發。

基於此,現提供一種基於策略配置的異常處理方法,來解決上述問題。



技術實現要素:

本發明的技術任務是針對以上不足之處,提供一種基於策略配置的異常處理方法。

一種基於策略配置的異常處理方法,其實現過程為:

首先對異常信息進行封裝,服務調用者在捕獲到異常時,對捕獲的異常進行封裝、截斷處理之後,封裝成異常處理的上下文信息;

調用異常處理引擎:將封裝好的異常上下文,傳給異常處理引擎,進行異常的處理;

進行異常上下文的解析:異常處理引擎在接收到異常上下文時,交給異常解析引擎,對上下文的信息進行解析;

調用異常處理策略引擎:解析完成之後,異常處理策略引擎根據傳入的策略名稱,調用不同的策略實現進行處理;

調用策略配置解析引擎:策略實現在進行處理時,調用策略配置解析引擎,對配置的策略配置進行解析,將結果返回;

調用策略執行引擎:根據策略解析引擎返回的結構,調用策略執行引擎,執行對應的異常處理。

封裝的異常信息包括異常編號、異常的提示信息、異常堆棧和異常的上下文信息,以便後續異常的處理使用;且該異常信息封裝成異常的上下文,包括:策略名稱、框架上下文、異常信息、錯誤上下文擴展屬性集合。

異常處理引擎提供了對外異常處理的接口,用於在進行異常處理的時候調用。

對上下文的信息進行解析是指解析出異常上下文存儲的上下文信息,並根據當前語言類型,獲取對應的異常的國際化提示信息。

在調用異常處理策略引擎時,如果策略名稱未傳入,則執行默認的內置策略,如果傳入策略名稱,則根據策略名稱,獲取對應的策略配置信息。

調用策略執行引擎時,根據返回的處理程序列表,調用對應的處理程序,進行異常處理,其處理的程序包括記錄日誌、彈出界面。

本發明的一種基於策略配置的異常處理方法和現有技術相比,具有以下有益效果:

本發明的一種基於策略配置的異常處理方法,提供了一種異常的處理方式,實現異常和處理策略的動態匹配,使得調用者能夠靈活的對異常進行處理,降低了代碼中對異常處理的複雜度,簡化了異常的處理過程,提供了異常處理的靈活性,提高了開發效率,實用性強,適用範圍廣泛,尤其適用於複雜的企業管理軟體領域,具有很好的推廣應用價值。

附圖說明

附圖1是本發明的異常處理的架構圖。

附圖2是本發明的異常處理時序圖。

具體實施方式

下面結合附圖及具體實施例對本發明作進一步說明。

如附圖1所示,本發明公開了一種基於策略配置的異常處理方法,基於配置的策略,實現對於捕獲的異常和處理策略的動態匹配處理,簡化了異常的處理過程,提供了異常處理的靈活性。

該發明基於異常的捕獲處理機制,採用配置的形式,動態的實現異常和處理策略的匹配。該發明使得調用者能夠靈活的對異常進行處理,降低了代碼中對異常處理的複雜度,提高了開發效率。

其實現基於以下幾個步驟和內容:

首先對異常信息進行封裝,服務調用者在捕獲到異常時,對捕獲的異常進行封裝、截斷處理之後,封裝成異常處理的上下文信息;

調用異常處理引擎:將封裝好的異常上下文,傳給異常處理引擎,進行異常的處理;

進行異常上下文的解析:異常處理引擎在接收到異常上下文時,交給異常解析引擎,對上下文的信息進行解析;

調用異常處理策略引擎:解析完成之後,異常處理策略引擎根據傳入的策略名稱,調用不同的策略實現進行處理;

調用策略配置解析引擎:策略實現在進行處理時,調用策略配置解析引擎,對配置的策略配置進行解析,將結果返回;

調用策略執行引擎:根據策略解析引擎返回的結構,調用策略執行引擎,執行對應的異常處理。

在異常的封裝步驟中。調用者在捕獲到異常時,需要對異常進行封裝,封裝的信息包括異常編號、異常的提示信息、異常堆棧和異常的上下文信息等,以便後續異常的處理使用。

對於異常的封裝成異常的上下文ExceptionContext,其主要包含的:策略名稱(PolicyName)、框架上下文(State)、異常信息(Exception)、錯誤上下文擴展屬性集合(ExtendedProperties)。

在調用異常處理引擎的步驟中,異常處理引擎提供了對外異常處理的接口,以方便在進行異常處理的時候調用。

異常處理引擎提供了對外異常處理的接口,以方便在進行異常處理的時候調用。其對外提供的方法列表如下:

1)Handle(ExceptionContext exceptionContext):此方法不彈出異常提示窗口,客戶端和服務端都可以調用;

2)HandleUI(ExceptionContext exceptionContext):此方法彈出異常提示窗口,只能客戶端調用。

在異常下文的解析的步驟中,針對傳遞過來的異常上下文,需要對其進行解析,解析出其存儲的上下文信息,同時根據當前語言類型,獲取對應的異常的國際化提示信息。

在調用異常處理策略引擎的步驟中,解析完成之後,異常處理策略引擎根據傳入的策略名稱,調用不同的策略實現進行處理。如果策略名稱未傳入,則執行默認的內置策略,如果傳入策略名稱,則根據策略名稱,獲取對應的策略配置信息;

在調用策略配置解析引擎的步驟中,根據傳入的策略名稱,解析預先配置的策略配置文件,返回其策略對應的處理程序列表。

在調用策略執行引擎的步驟中,調用策略執行引擎根據返回的處理程序列表,調用對應的處理程序,進行異常處理,其處理的程序包括:記錄日誌、彈出界面或者其他操作。

基於前面所述的基於策略配置的異常處理方法實現思路,在具體項目實施的過程中,如附圖2所示,其主要步驟如下:

在配置文件中配置配置節。基於配置組件,在對應的策略配置文件中配置對應的配置節,以便預置策略和對應的處理程序,其配置的配置文件示意如下所示:

調用異常處理程序,其封裝的異常上下文,其主要參數有以下幾個:

State:程序運行所需要的上下文,其主要包括登錄的Session信息、登錄實例信息等;

PolicyName:策略名稱,其主要用來從配置文件中查找對應的處理程序,如果不傳遞,則調用默認的處理策略;

Exception:需要處理的異常實例,其主要是對於捕獲的異常進行包裝之後的異常類;

ExtendedProperties:異常處理的上下文信息,其主要用來傳遞出現異常的上下文信息,以方便異常處理的時候使用。

其異常處理的執行調用程序。其步驟簡單描述如下:

調用者調用WrapException,對異常進行封裝;

調用者調用ExceptionEngine對外提供的接口,處理異常;

ExceptionEngine調用ExceptionContextAnalysis,解析異常的上下文,獲取異常處理的信息;

ExceptionEngine調用ExceptionPolicyEngine執行策略的調用;

ExceptionPolicyEngine調用PolicyAnalysisEngine,解析策略配置文件;

ExceptionPolicyEngine調用PolicyExecuteEngine,執行策略的處理程序;

PolicyExecuteEngine調用具體的策略實現,完成整個異常處理過程。

通過上面具體實施方式,所述技術領域的技術人員可容易的實現本發明。但是應當理解,本發明並不限於上述的具體實施方式。在公開的實施方式的基礎上,所述技術領域的技術人員可任意組合不同的技術特徵,從而實現不同的技術方案。

除說明書所述的技術特徵外,均為本專業技術人員的已知技術。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀