java規範 SPI

它就是一種動態替換髮現的機制,能夠在運行時動態的給接口添加實現html

SPI機制的約定:.net

1)   在META-INF/services/目錄中建立以接口全限定名命名的文件該文件內容爲Api具體實現類的全限定名htm

2)  使用ServiceLoader類動態加載META-INF中的實現類blog

3)  如SPI的實現類爲Jar則須要放在主程序classPath中接口

4)  Api具體實現類必須有一個不帶參數的構造方法it

 

模塊間的依賴應該針對接口,不該該依賴實現類,若是寫了那替換實現類時須要修改代碼。而spi就是解決這個問題的,依賴接口,實現類經過spi機制處理,完成了接口的實現類發現機制。經過配置進行接口實現的插拔,改實現類只須要改配置文件尋找新的實現類便可。class

 

https://www.cnblogs.com/zhongkaiuu/articles/5040971.html配置

http://blog.csdn.net/zmx729618/article/details/53285416service

http://blog.csdn.net/qq924862077/article/details/52778135程序

http://mars914.iteye.com/blog/1283859

相關文章
相關標籤/搜索