API & SPI
2015-12-29 20:53
323 查看
API: 接口定义在实现方
SPI: 接口定义在调用方
SPI的含义:
Service Provider Interface : 提供给服务提供厂商与扩展框架功能的开发者使用的接口
通过Java SPI机制,我们就可以在不修改Jar包或者框架的时候为API提供新实现。
使用场景:
比如确认收货超时的需求:
对于不同的类型的订单,确认收货超时的时间不一样。
我们可以定义接口,对于每种类型订单,去匹配不同的超时任务处理的实现接口。
这样可以很容易扩展新的功能。
很多框架都使用了Java的SPI机制,如java.sql.Driver的SPI实现, common-logging的日志接口等。
SPI: 接口定义在调用方
SPI的含义:
Service Provider Interface : 提供给服务提供厂商与扩展框架功能的开发者使用的接口
通过Java SPI机制,我们就可以在不修改Jar包或者框架的时候为API提供新实现。
使用场景:
比如确认收货超时的需求:
对于不同的类型的订单,确认收货超时的时间不一样。
我们可以定义接口,对于每种类型订单,去匹配不同的超时任务处理的实现接口。
这样可以很容易扩展新的功能。
很多框架都使用了Java的SPI机制,如java.sql.Driver的SPI实现, common-logging的日志接口等。
相关文章推荐
- akka---Getting Started Tutorial (Java): First Chapter
- 高精度乘法程序
- Java 中4字节形式数据转换为float
- linux系统启动流程
- android性能优化
- 让OpenCV枚举所有摄像头-附如何建立Windows下的OpenCV工程
- 20151229--数据表格
- SQL学习总结
- android 日历源码
- epoll详解
- PhoneGap/Cordova学习笔记--4.使用HTML5进行页面布局
- 高并发,高性能的一点调研
- 数据迁移程序
- C#难点逐个击破3params数组参数
- Spring Scope讲解
- 作品第二课----基于bootstrap的滚动监听
- 学习笔记 --- 最大流Dinic算法
- 课程设计——图书管理新系统
- (⊙o⊙)…
- 将shell脚本执行情况写入Rsyslog日志服务器