本文介紹了OSGi和Java服務(wù)提供者接口有什么不同?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!
問題描述
OSGi和Java SPI有什么不同?利弊是什么?
JavaSPI
JavaSPI主要用于提供推薦答案標(biāo)準(zhǔn)的實現(xiàn)。這種方法在服務(wù)的客戶端和提供者之間實現(xiàn)了一定程度的解耦。實現(xiàn)類在META-INF/services中定義。
不過,這是一個非常簡單的模型。實現(xiàn)不能注入其他服務(wù),也沒有配置模型。因此,這主要適用于沒有其他依賴項的低級服務(wù)。
OSGi還支持服務(wù)的客戶端和提供者的解耦。它還允許配置和動態(tài)注冊服務(wù)。此外,還有幾個可以互操作的編程模型,如聲明性服務(wù)和CDI。
OSGi的缺點是,它要求所有庫都位于一個模塊化的類加載器中,并處理JAR(捆綁包)的動態(tài)加載和卸載。因為不是所有的庫都是這樣構(gòu)建的,所以有一組有限的java庫可以在OSGi中很好地工作。
這篇關(guān)于OSGi和Java服務(wù)提供者接口有什么不同?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,