JAVA中的SPI实现


SPI简介
SPI 全称为 (Service Provider Interface) ,是JDK内置的一种服务提供发现机制。 目前有不少框架用它来做服务的扩展发现,目前Dubbo框架就基于SPI机制提供扩展功能
实例代码
废话不多说,上代码
JAVA中的SPI实现
1.定义一个接口:
package com.ywsc.fenfenzhong.spi.learn;
import java.util.List;
public interface Search {
public List searchDoc(String keyword);
}
2.DatabaseSearch 实现类:
package com.ywsc.fenfenzhong.spi.learn;
import java.util.List;
public class DatabaseSearch implements Search{
@Override
public List searchDoc(String keyword) {
System.out.println(“数据库搜索”+keyword);
return null;
}
}
3.FileSearch实现类:
package com.ywsc.fenfenzhong.spi.learn;
import java.util.List;
public class FileSearch implements Search{
@Override
public List searchDoc(String keyword) {
System.out.println("文件搜索 "+keyword);
return null;
}
}
4.测试类:
package com.ywsc.fenfenzhong.spi.learn;
import java.util.Iterator;
import java.util.ServiceLoader;
public class Test {
public static void main(String[] args) {
ServiceLoader s = ServiceLoader.load(Search.class);
Iterator iterator = s.iterator();
while (iterator.hasNext()) {
Search search = iterator.next();
search.searchDoc(“hello world”);
}
}
}
让我们跑起来…
JAVA中的SPI实现
JAVA中的SPI实现

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-08-18
  • 2021-07-14
  • 2021-10-19
  • 2023-03-18
猜你喜欢
  • 2022-12-23
  • 2021-12-16
  • 2021-06-26
  • 2021-10-03
  • 2021-10-18
  • 2021-10-08
  • 2022-01-14
相关资源
相似解决方案