2020国产成人精品视频,性做久久久久久久久,亚洲国产成人久久综合一区,亚洲影院天堂中文av色

分享

OSGI的大餅圖

 昵稱40650 2007-09-06
總結(jié)起來,OSGI的R4規(guī)范就是由Core Framework以及基于其上的各類Service組成的。Core Framework中主要包含四層部件,第一層就是運行時環(huán)境,這個就是JAVA的運行環(huán)境就OK了;第二層是Module層,Module其實就可以看成是插件吧,只不過說OSGI對于每個Module都有一個單獨的類加載器來加載它;第三層就是典型的Module生命周期的管理,按照Module的生命周期進行狀態(tài)的轉(zhuǎn)換(哈哈,現(xiàn)在看到這種狀態(tài)轉(zhuǎn)換的例子,就開始想到狀態(tài)模式了);第四層其實是服務(wù)層,為了解決Module之間的通信,那么設(shè)定了通過提供各自曝露自己的Service的方式。那么好,誰知道這些Service呢,OK,有了ServiceRegistration,那么這個對象知道所有的Service都從這里注冊,那么就知道各個對象提供的Service了:),其實是一個ServiceLocator的例子,只需要知道它,然后聲明自己需要那個服務(wù),就從這個ServiceLocator來得到自己的服務(wù)就好了。
看Module的定義其實真的沒有太多的看頭,其實和plugin.xml(不管是Eclipse的還是Apollo的都是一樣),只不過是換了個名稱而已。多了ModuleActivator的聲明,這個類就是用來控制Module的生命周期的,很有用。其它的描述除了有Module自身信息之外,還有依賴關(guān)系的描述;以及對外提供接口的描述。我們實用Provide-Service的方式來描述,其實是差不多的。
OSGI的類加載器有一套自己的定義。主要是系統(tǒng)類加載器,以及模塊的類加載器,還有默認的啟動類加載器(不是JVM的那個,而是OSGI里面定義的一個bootClassLoader)
有一張圖詳細畫了這個類加載器的結(jié)構(gòu),和OSGI進行類加載的步驟,很清晰,很好。
關(guān)于LifeCycle,就不用再啰嗦了。只要知道狀態(tài)的變化就OK了。
服務(wù)層實現(xiàn)了服務(wù)的注冊,服務(wù)的獲取,服務(wù)的監(jiān)聽,其實也是一套面向服務(wù)的體系結(jié)構(gòu),SOA嘛,這里也是簡單的實現(xiàn)。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多