在java中使用SPI创建可扩展的应用程序操作
我们将应用程序做成插件或者模块。这样可以在不修改原应用的基础上,对系统功能进行升级或者定制化。本文将会向大家介绍如何通过java中的SPI机制实现这种可扩展的应用程序。SPI的全称是Java Service Provider Interface。是java提供的一种服务发现的机制。通过遵循相应的规则编写应用程序之后,就可以使用ServiceLoader来加载相应的服务了。Service Providers:这是SPI的具体实现,提供了具体的实现功能SPI Configuration File:SPI的配置文件,通过在配置文件我们来配置相关的SPI发现信息。ServiceLoader: ServiceLoader是用来加载和发现服务的java类,并提供了很多有用的方法。讲完SPI的定义,大家可能还是不清楚SPI到底是做什么的,又该怎么使用它。不用急,我们下面通过一个例子来说明。首先创建一个module:SPI-service,里面主要定义了一个ModuleService接口:
用户评论