写一段java的spi机制代码
时间: 2024-03-01 14:56:04 浏览: 151
好的,以下是Java SPI机制的示例代码:
1. 定义接口
```java
package com.example.spi;
public interface HelloService {
void sayHello();
}
```
2. 实现接口
```java
package com.example.spi.impl;
import com.example.spi.HelloService;
public class HelloServiceImpl implements HelloService {
@Override
public void sayHello() {
System.out.println("Hello, I'm HelloServiceImpl!");
}
}
```
3. 创建配置文件
在`src/main/resources/META-INF/services`目录下创建名为`com.example.spi.HelloService`的文件,文件内容为实现类的全限定类名,如下所示:
```
com.example.spi.impl.HelloServiceImpl
```
4. 加载实现类
```java
package com.example.spi;
import java.util.ServiceLoader;
public class Main {
public static void main(String[] args) {
ServiceLoader<HelloService> loader = ServiceLoader.load(HelloService.class);
for (HelloService helloService : loader) {
helloService.sayHello();
}
}
}
```
5. 运行结果
```
Hello, I'm HelloServiceImpl!
```
阅读全文