当前位置: 首页 > news >正文

网站建设网站的日记百度电脑版入口

网站建设网站的日记,百度电脑版入口,学校网站要求,网店运营实训报告总结1. 了解SPI机制 我们在平时学习和工作中总是会听到Java SPI机制,特别是使用第三方框架的时候,那么什么是SP机制呢?SPI 全称 Service Provider Interface,是 Java 提供的一套用来被第三方实现或者扩展的接口,它可以用来…

1. 了解SPI机制

我们在平时学习和工作中总是会听到Java SPI机制,特别是使用第三方框架的时候,那么什么是SP机制呢?SPI 全称 Service Provider Interface,是 Java 提供的一套用来被第三方实现或者扩展的接口,它可以用来启用框架扩展和替换组件。 SPI 的作用就是为这些被扩展的 API 寻找服务实现。

2. 使用SPI机制

  1. 新建一个maven工程spiTest,包含两个子工程spiProvider、spiConsumer,工程结构如下:

在这里插入图片描述

  1. 在spiProvider工程中定义一个PowerJackInterface接口:

    package com.jing.standard;/*** 电源插座接口*/
    public interface PowerJackInterface {/*** 电源插座*/void doPowerJack();}
    
  2. 在spiProvider工程中提供一个实现类:

    package com.jing.standard.impl;import com.jing.standard.PowerJackInterface;public class PowerJack110V implements PowerJackInterface {@Overridepublic void doPowerJack() {System.out.println("这是110V电源插座!");}
    }
    
  3. 在spiProvider工程中resource目录下创建 META-INF/services/目录,并且创建一个名为com.jing.standard.PowerJackInterface的文件,内容如下:

    com.jing.standard.impl.PowerJack110V
    
  4. 在spiConsumer工程中引入spiProvider工程:

    <dependency><groupId>com.jing</groupId><artifactId>spiProvider</artifactId><version>1.0.0-SNAPSHOT</version>
    </dependency>
    
  5. 在spiConsumer工程中进行方法调用:

    package com.jing;import com.jing.standard.PowerJackInterface;import java.util.ServiceLoader;public class Main {public static void main(String[] args) {ServiceLoader loader = ServiceLoader.load(PowerJackInterface.class);loader.forEach(item -> {PowerJackInterface powerJackInterface = (PowerJackInterface) item;powerJackInterface.doPowerJack();});}
    }
    
  6. 运行结果:

    这是110V电源插座!
    
  7. 在spiConsumer工程中也增加一个PowerJackInterface接口实现类:

    package com.jing.service;import com.jing.standard.PowerJackInterface;public class PowerJack220V implements PowerJackInterface {@Overridepublic void doPowerJack() {System.out.println("220V电源插座!");}
    }
    
  8. 在spiConsumer工程中resource目录下创建 META-INF/services/目录,并且创建一个名为com.jing.standard.PowerJackInterface的文件,内容如下:

    com.jing.service.PowerJack220V
    
  9. 运行结果

    220V电源插座!
    这是110V电源插座!
    

3. SPI机制总结

JDK中的SPI实现,是由ServiceLoader类根据自定义传入类加载器或者应用程序类加载器在约定好的固定路径下(ClassPath:META-INF/services/)去查找和加载第三方接口实现类。
在这里插入图片描述

要使用JDK中的SPI机制有几个前提条件:

  • 服务提供方必须实现目标接口
  • 服务提供方必须在自身ClassPath:META-INF/services/路径下建立文件,文件名为目标接口全限定名;文件内容为实现目标接口的具体实现类全限定名。
http://www.ds6.com.cn/news/109381.html

相关文章:

  • 网站建设流程案例什么是网站外链
  • 营销型网站建设价格是多少电子商务网站开发
  • wap手机网站建设新闻头条今天最新消息
  • 昭通市建设局网站东莞百度推广排名优化
  • 智能响应式网站建设百度推广培训机构
  • 网站后台上传图片做难吗关键词优化简易
  • 网站各个级别建设费用推广普通话ppt课件
  • 怎么让网站收录在google沈阳网站制作公司
  • 国内做服装的网站有哪些方面微信群发软件
  • 网站建设找王科杰信誉百度网站域名注册
  • 济南模版网站新闻类软文营销案例
  • 网站建设规划书3000字长沙seo优化首选
  • dede新手做网站多久网站内容如何优化
  • wordpress模板信息福州seo经理招聘
  • 东京热 在线A视频网站一级做爰片常德网站建设制作
  • 网站做任务赚qb各大网站提交入口网址
  • 花钱做网站拉新任务接单放单平台
  • 网络系统设计的步骤关键词优化课程
  • 做dw网站图片怎么下载地址如何让百度快速收录网站文章
  • 咸阳学校网站建设哪家专业宁波江北区网站推广联系方式
  • 网上花店网站建设规划书营销网站推荐
  • 点样做网站免费发布推广的网站有哪些
  • 哪家企业网站做的好百度app下载安装官方免费下载
  • 企业做网站需注意什么站长之家官网登录入口
  • 永久免费建个人网站百度seo简爱
  • 沈阳大型网站制作公司中央人民政府网
  • asp 网站开发教程泰安百度推广代理
  • 旅游建设投资公司中网站营销推广app
  • 网站开发可以开发哪些浅议网络营销论文
  • 加强 政府 网站 建设项目北京seo邢云涛