[發明專利]一種基于系統運行的依賴注入方法及裝置有效
| 申請號: | 201010593877.8 | 申請日: | 2010-12-17 |
| 公開(公告)號: | CN102566992A | 公開(公告)日: | 2012-07-11 |
| 發明(設計)人: | 宮建濤 | 申請(專利權)人: | 卓望數碼技術(深圳)有限公司 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44 |
| 代理公司: | 廣州三環專利代理有限公司 44202 | 代理人: | 郝傳鑫;潘中毅 |
| 地址: | 518000 廣東省深圳*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 系統 運行 依賴 注入 方法 裝置 | ||
技術領域
本發明涉及依賴注入技術領域,尤其涉及一種基于系統運行的依賴注入方法及裝置。
背景技術
依賴注入(Dependency?Injection,DI),又叫做控制反轉(Inversion?of?Control,?IoC),是一個重要的利用面向對象編程的法則來削減計算機程序的耦合問題的技術。依賴注入技術主要以Sping框架(一個開源的Java/Java?EE全功能棧(full-stack)的應用程序框架)為代表,Sping框架提供了屬性注入、構造函數注入與工廠方法注入三種依賴注入方式。Spring的依賴注入技術采用XML(Extensible?Markup?Language,可擴展標記語言)配置文件或Java注解的方式進行注入配置,其中,采用XML配置文件進行注入配置,只需要修改XML配置文件就可以改變注入的值,其操作較為簡單;而采用Java注解的方式進行注入配置時,需要修改Java代碼并重新編譯與發布,其操作較為復雜;因此,Spring的依賴注入技術中廣泛采用XML配置文件進行注入配置。
Sping的依賴注入主要是面向接口編程,具體的特性實例(實現類)在業務級系統運行時通過注入的方式注入,提供給系統調用。請參見圖1,為現有的Spring的依賴注入的結構示意圖;HelloWorld接口包括兩個特性實例:CnHelloWorldImpl和EnHelloWorldImpl,如果系統運行時需要使用CnHelloWorldImpl,則按照下面的方式將CnHelloWorldImpl注入:
<bean?id=cnHelloWorld
????????????class=?CnHelloWorldImpl?>
</bean>
<bean?id=helloWorldAction?class=?HelloWorldAction?>?<property?name=helloWorld>?<ref?local=cnHelloWorld/>?</property>?</bean>
通過上述方式,CnHelloWorldImpl的特性實例(特性bean)被注入到系統中運行。如果系統要求某一場景或某段時間使用CnHelloWorldImpl,要求另一場景或另一時間使用EnHelloWorldImpl,則此時修改上述的配置文件中的local值來實現。由于Spring的XML配置文件是預先配置好并存儲于Jar(Java?Avchive,Java歸檔文件)包中的,且Jar包一般位于系統運行平臺之外,對該配置文件進行修改,需要首先退出系統平臺,進入Jar包進行配置修改,然后再重新啟動應用服務器。
綜上,發明人發現,雖然現有的Spring的依賴注入功能較為強大,但其無法在系統運行時動態改變注入的特性實例,并不適用存在大量業務特性的業務系統,實用性較低。
發明內容
本發明實施例所要解決的技術問題在于,提供一種基于系統運行的依賴注入方法及裝置,可在系統運行時動態改變注入的特性實例,保證系統(調用者)與特性實例(實現類)之間的松耦合關系,提升Spring的依賴注入的實用性。
為了解決上述技術問題,本發明實施例提供了一種基于系統運行的依賴注入方法,包括:
根據系統運行所需的業務特性,從業務特性配置表中獲得所述業務特性的配置信息;
根據所述業務特性的配置信息,以及預設的業務特性配置表與特性實例配置表的映射關系,從特性實例配置表中獲取對應的特性實例的配置信息;
根據獲取的所述特性實例的配置信息,實例化所述業務特性,將實例化后的業務特性返回給系統運行。
其中,所述根據系統運行所需的業務特性,從業務特性配置表中獲得所述業務特性的配置信息之前,還包括:
預先設定業務特性配置表和特性實例配置表,并建立所述業務特性配置表和所述特性實例配置表的映射關系;其中,所述業務特性配置表和特性實例配置表的映射關系為:所述業務特性配置表中的記錄與所述特性實例配置表中的記錄相對應。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于卓望數碼技術(深圳)有限公司,未經卓望數碼技術(深圳)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010593877.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:缺氣保用輪胎
- 下一篇:一種側光式背光模組及液晶顯示裝置





