您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“java的SPI是什么”,內容詳細,步驟清晰,細節處理妥當,希望這篇“java的SPI是什么”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
概念
1、SPI是服務提供界面,JDK內置的服務提供發現機制,是Java提供的第三方實現或擴展的API,可用于啟用框架擴展和更換組件。
Java SPI的具體約定
在classpath下面時,在classpath下的META-INF/services/目錄中同時創建以服務界面命名的文件。這個文件是實現這個服務界面的具體實現類別。
當外部程序組裝該模塊時,您可以通過jar包META-INF/services/中的配置文件找到具體的實現類別名稱,并加載實例,完成模塊注入。
2、調用者根據實際使用需要啟用、擴展或更換框架的實現策略。
常見的例子:
數據庫驅動加載接口實現類加載。
JDBC負載驅動不同類型的數據庫。
記錄日志接口實現類載入。
SLF4J載入不同供應商的日志實現類別。
Spring
SSpring中,SPI被廣泛使用,例如:Servlet3.0規范實現ServletContainerInitializer,自動類型轉換TypeConversionSPI(ConverterSPI,FormatterSPI)等等。
Java中的集合主要分為四類:
1、List列表:有序的,可重復的;
2、Queue隊列:有序,可重復的;
3、Set集合:不可重復;
4、Map映射:無序,鍵唯一,值不唯一。
讀到這里,這篇“java的SPI是什么”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。