SPI扩展机制概述

SPI 概述

  • SPI 全称为 Service Provider Interface,是一种服务发现机制
  • 用来给第三方实现或扩展的 API,它可以用于实现框架扩展或组件替换
  • SPI 机制本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载文件中的实现类,这样运行时可以动态的为接口替换实现类

使用要求

  • META-INF/services 下面定义个文件,然后通过一个特殊的类加载器,启动的时候加载你定义文件中的类

image-20211213165936684

为什么要有 SPI

  • 引入了 SPI 机制后,服务接口与服务实现就会达成分离的状态,可以实现解耦以及程序可扩展机制
  • 服务提供者(比如 springboot starter)提供出 SPI 接口后,(shardingspere)
  • 客户端(平常的 springboot 项目)就可以通过本地注册的形式,将实现类注册到服务端,轻松实现可插拔
posted @   BNTang  阅读(608)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示