Skip to content
Pierre T. edited this page Jan 12, 2015 · 2 revisions

An SPI (Service Provider Interface) is an API addressed to third-party libraries. This particular API allows to extends the features provided by the framework without having to modify its source code. A business developer will then benefit from additional features by adding libraries which extends the framework SPI.

An example often quote is JDBC (Java Data Base Connectivity), the Oracle framework used to access databases. Sun, the JDBC creator didn't develop implementations for all the databases in the market. It would have been to much work. Instead they develop a unique API to work in the same way, regardless the relational database. The users use JDBC to write the code to access their database, but they choose a library using the JDBC SPI according their database. For instance, the PostgreSQL editor provides on its website the driver to access its database through JDBC.

Content

Clone this wiki locally