Solpic 是什么
Solpic是一款零依赖、适配所有主流HTTP
客户端实现、兼容多JDK
版本(支持JDK8 ~ JDK22
)、同时支持声明式、命令式、SPI
增强、拦截器链等高级特性的HTTP
客户端扩展。
- 🌈 零依赖
- 🚀 高性能
- 🛠 易扩展
- 💪 同时支持声明式和命令式
- 🧪 兼容主流
HTTP
客户端 - ☕ 兼容
JDK8 ~ 22
架构图
// todo
功能对比
Solpic
和其他同类型组件对比:
特性 | Solpic | RestTemplate (Spring ) | Retrofit (Square ) |
---|---|---|---|
零依赖 | ✅ | ❌ | ❌ |
多JDK 版本兼容 | ✅ | ❌ | ✅ |
Flow 模式 | ✅ | ✅ | ❌ |
命令式调用 | ✅ | ✅ | ✅ |
声明式调用 | ✅ | ❌ | ✅ |
多HTTP 客户端支持 | ✅ | ✅ | ❌ |
序列化支持 | ✅ | ✅ | ✅ |
异步调用 | ✅ | ❌ | ✅ |
调用指标统计 | ✅ | ❌ | ❌ |
小结
为了实现零依赖,Solpic
借鉴了很多其他框架的基础功能实现,包括SPI
增强、多种日志框架适配、多种JSON
框架序列化反序列化支持、动态配置项设计、可监听线程池扩展等等。引入了Solpic
依赖之后,这些特性都可以开箱即用,无额外的依赖和心智负担。另外,Solpic
基于JDK22
开发,核心代码严格控制使用JDK8
提供的API
,基于高版本JDK
的API
编写的组件以扩展形式加载,并且通过Multi-Release
特性(见JEP 238: Multi-Release JAR Files)实现多JDK
版本兼容(目前JDK8 ~ 22
都可以正常使用Solpic
)。