java SPI简述

2 篇文章 0 订阅

引用

Java 的 SPI 机制,英文全称是 Service Provider Intrface,常用于框架的可扩展实现。
Java 语言的 JDBC、JDNI 就使用了这种技术,甚至我们常用的 dubbo 也是在 Java SPI 机制基础上做的改进。

Service Provider Framework 的四个概念:

  • Service Interface 服务接口,(这里对应 Song 接口。)
  • Provider Registration API 用户注册接口,(这里对应 ParserManager.registerParser() 方法。)
  • Service Access API 获取服务实例方法(这里对应 ParserManager.getSong() 方法。)
  • Service Provider Interface 创建服务实现的接口,(这里对应 Parser 接口。)
    所有借助 Java SPI 机制实现的框架,除了 Service Interface 服务接口不是必须的之外,其他三个都是必须要有的。

实现SPI的服务接口,在使用时是可插拔的。用户注册接口会扫描classpath路径下实现了SPI接口的类,将其注册到管理类。

在每个实现SPI接口的服务的pom文件中,引入提供接口服务的jar包依赖。并在resourses/META-INF/services下创建一个以SPI接口名为文件名的文件,在该文件中写上实现SPI接口的类名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值