实现服务模块之间解耦的方式有很多,但是插件来说,其解耦的程度似乎更高,而且更灵活,可定制化、个性化更好。 举例来说,代码中可以使用设计模式来选择使用哪种方式发送短信给下单完成的客户,问题是各个短信服务商并不一定能保证在任何情况下都能 ...
类似于ServiceLoader的这种SPI机制,我更愿意称它为一种框架的插件机制,因为它提供了一种插拔机制,可以让第三方开发人员很容易的对框架进行功能的拓展,这种机制对原框架的功能和新拓展的功能进行了解耦,他们之间通过接口约定,然后基于SPI进行插拔式 ...
本篇我们来探究Java的SPI机制的相关源码。一起来看一下吧。 本篇我们来探究Java的SPI机制的相关源码。 那么,什么是SPI机制呢? SPI是Service Provider Interface 的简称,即服务提供者接口的意思。根据字面意思我们可能还有点困惑,SPI说白了就是一种扩展机制,我们 ...