一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|編程技術|正則表達式|

服務器之家 - 編程語言 - JAVA教程 - 淺談Java的SPI技術

淺談Java的SPI技術

2020-07-19 11:26思思博士 JAVA教程

這篇文章主要介紹了Java的SPI技術的相關資料,文中講解非常細致,代碼幫助大家更好的理解和學習,感興趣的朋友可以了解下

人狠話不多,先上截圖和代碼吧。

淺談Java的SPI技術

淺談Java的SPI技術

這是工程目錄。看到resources目錄下面沒有,添加了META-INF和services目錄。

添加了一個com.gys.test.IAnimal文件。這個文件名和上面的接口名完全對應。這個目錄的文件名是有講究的,按照SPI規范來的。

上代碼:

?
1
2
3
4
5
package com.gys.test;
 
public interface IAnimal {
  void eat();
}
?
1
2
3
4
5
6
7
8
9
10
11
package com.gys.test.impl;
 
import com.gys.test.IAnimal;
 
public class Bird implements IAnimal {
 
  @Override
  public void eat() {
    System.out.println("小鳥吃蟲子");
  }
}
?
1
2
3
4
5
6
7
8
9
10
11
package com.gys.test.impl;
 
import com.gys.test.IAnimal;
 
public class Dog implements IAnimal {
  @Override
  public void eat() {
    //System.out.println("小狗吃屎");
    System.out.println("小狗吃骨頭");
  }
}
?
1
2
3
4
5
6
7
8
9
10
11
12
package com.gys.test;
 
import java.util.ServiceLoader;
 
public class MainTest {
  public static void main(String[] args) {
    ServiceLoader<IAnimal> animals=ServiceLoader.load(IAnimal.class);
    for (IAnimal animal:animals){
      animal.eat();
    }
  }
}

淺談Java的SPI技術

源碼一角說明META-INF/service:

淺談Java的SPI技術

ServiceLoader.load(clsss)就是去ClassPath的MEAT-INF的service下去尋找指定文件;這里的classPath包括外部引入的jar包中的classPath.

如果我們引入了第三方的jar包,如果jar中的META-INF/service有com.gys.test.IAnimal文件,也會被讀取,并且實例化里面的類。

SPI使用場景:

自己提供接口讓別人提供實現的方式;典型的如JDBC模式。

淺談Java的SPI技術

淺談Java的SPI技術

以上就是淺談Java的SPI技術的詳細內容,更多關于JAVA SPI技術的資料請關注服務器之家其它相關文章!

原文鏈接:https://www.cnblogs.com/guoyansi19900907/p/12765353.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: zozzozozozo大| 国产欧美曰韩一区二区三区 | 97网站| 狠狠色婷婷狠狠狠亚洲综合 | asspics大尿chinese | 超强台风免费观看完整版视频 | 亚洲网红精品大秀在线观看 | 国产午夜一区二区在线观看 | 秋霞午夜伦午夜高清福利片 | 亚洲 欧美 在线观看 | 亚洲 综合 欧美在线视频 | 亚洲男人天堂久久 | 亚洲国产精品自在自线观看 | 91免费精品国自产拍在线不卡 | 四虎永久免费在线观看 | 日韩黄色影视 | 成年男女免费大片在线观看 | 亚洲视频一区网站 | 久热这里在线精品 | 91大神在线观看精品一区 | 欧美一级艳片视频免费观看 | gogort99人体专业网站 | 亚洲精品国产成人中文 | 亚洲精品黄色 | 韩日视频在线观看 | 亚洲国产精品综合久久网络 | 国产欧美精品一区二区三区四区 | 多人群p全肉小说 | 国产精品亚洲精品日韩已方 | 美女国内精品自产拍在线播放 | 日本中文字幕在线视频 | 国产精品亚洲片在线va | 韩国悲惨事件30无删减在线 | 99久9在线视频 | 国产人成77777视频网站 | 深夜在线 | 精品国产原创在线观看视频 | 男人肌肌捅女人肌肌 | 日韩人成免费网站大片 | 高清在线免费观看 | 国产日产精品久久久久快鸭 |