• 技术文章 >java >java基础

    java SPI的使用场景

    小妮浅浅小妮浅浅2021-07-19 09:51:56原创3076

    概念

    1、SPI是服务提供界面,JDK内置的服务提供发现机制,是Java提供的第三方实现或扩展的API,可用于启用框架扩展和更换组件。

    Java SPI的具体约定

    在classpath下面时,在classpath下的META-INF/services/目录中同时创建以服务界面命名的文件。这个文件是实现这个服务界面的具体实现类别。

    当外部程序组装该模块时,您可以通过jar包META-INF/services/中的配置文件找到具体的实现类别名称,并加载实例,完成模块注入。

    2、调用者根据实际使用需要启用、扩展或更换框架的实现策略。

    常见的例子:

    数据库驱动加载接口实现类加载。

    JDBC负载驱动不同类型的数据库。

    记录日志接口实现类载入。

    SLF4J载入不同供应商的日志实现类别。

    Spring

    SSpring中,SPI被广泛使用,例如:Servlet3.0规范实现ServletContainerInitializer,自动类型转换TypeConversionSPI(ConverterSPI,FormatterSPI)等等。

    以上就是java SPI的使用场景,希望对大家有所帮助。更多Java学习指路:Java基础

    本教程操作环境:windows7系统、java10版,DELL G3电脑。

    专题推荐:java spi
    上一篇:java中volatile的应用场景 下一篇:java SPI如何定义接口

    相关文章推荐

    • java Callable接口是什么• java中Future如何使用?• java使用wait改变线程状态• java join阻碍线程• java park方法怎么用?• java throw和throws的区别• java停止线程的方式• java线程池的优缺点分析• java线程池有哪些拒绝策略• java线程池关闭的方法• java不同锁模式下的插队探究• java怎么从键盘输入一个数• java怎么从键盘输入数据• java求圆的面积代码

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网