Skip to content

Java 和 SpringBoot 的 SPI 机制

约 905 字大约 3 分钟

SpringBootSPI

2024-11-08

1. JDK 原生的 SPI

JDK的SPI通过在/resources/META-INF/services/目录下放置全限定路径文件 来指定哪些类实现了给定的服务接口。

java_spi.png

示例:

使用

2. SpringBoot 的 SPI 机制

SpringBoot 3.x之后Spring.factories被弃用

2.7.x 之前版本

文件路径:/resources/META-INF/spring.factories

spring_factories.jpg

3.x 以后版本

文件路径:/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports

AutoConfiguration_imports.png