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

霞山手机网站建设公司中国刚刚发生的新闻

霞山手机网站建设公司,中国刚刚发生的新闻,做网站用的代码,销售管理系统哪种好一点Java基础之SPI机制一、SPI机制的简单示例1、案例分层2、接口3、实现类4、测试类5、结果二、SPI机制的缺陷一、SPI机制的简单示例 1、案例分层 resources 接下来可以在resources下新建META-INF/services/目录,然后新建接口全限定名的文件:com.example.d…

Java基础之SPI机制

  • 一、SPI机制的简单示例
    • 1、案例分层
    • 2、接口
    • 3、实现类
    • 4、测试类
    • 5、结果
  • 二、SPI机制的缺陷


一、SPI机制的简单示例

1、案例分层

resources 接下来可以在resources下新建META-INF/services/目录,然后新建接口全限定名的文件:com.example.demo.service.Search,里面加上我们需要用到的实现类com.example.demo.service.impl.FileSearch
在这里插入图片描述

2、接口

public interface Search {public List<String> searchDoc(String keyword);
}

3、实现类

public class FileSearch implements Search {@Overridepublic List<String> searchDoc(String keyword) {System.out.println("文件搜索 "+keyword);return null;}
}

4、测试类

@SpringBootTest
@Slf4j
public class SPITests {@Testvoid test1() {ServiceLoader<Search> s = ServiceLoader.load(Search.class);Iterator<Search> iterator = s.iterator();while (iterator.hasNext()) {Search search =  iterator.next();search.searchDoc("hello world");}}
}

5、结果

如果在com.example.demo.service.Search文件里写上两个实现类,那最后的输出结果就是两行了。这就是因为ServiceLoader.load(Search.class)在加载某接口时,会去META-INF/services下找接口的全限定名文件,再根据里面的内容加载相应的实现类。这就是spi的思想,接口的实现由provider实现,provider只用在提交的jar包里的META-INF/services下根据平台定义的接口新建文件,并添加进相应的实现类内容就好。

在这里插入图片描述

二、SPI机制的缺陷

  • 不能按需加载,需要遍历所有的实现,并实例化,然后在循环中才能找到我们需要的实现。如果不想用某些实现类,或者某些类实例化很耗时,它也被载入并实例化了,这就造成了浪费。
  • 获取某个实现类的方式不够灵活,只能通过 Iterator 形式获取,不能根据某个参数来获取对应的实现类。
  • 多个并发多线程使用 ServiceLoader 类的实例是不安全的。

  • 世界上那些最容易的事情中,拖延时间最不费力。
  • 每个人都有属于自己的时刻表,别让任何人打乱你人生的节奏。
  • 那是九月的秋天你写的信,传至十月我游荡在黄金稻穗间的魂儿手中,牵着它引入了十一月的深秋,告诉我,你在冬日暖炉旁等候。
  • 成熟,是你出门总会自己带伞,很少再把自己淋湿;是你能控制自己的眼泪,很少再把自己感动哭。成熟是你学会善待自己,照顾好自己。你逐渐成为独立的个体,而不是将生活侥幸地寄托于外在的一切。没有人,一定会在雨夜去接你。没有人,一定会读懂你的心。
  • 只要心情是晴朗的,人生就没有雨天。生活不必太刻意,只要自己默默的努力,生活总会给你惊喜。
  • 圣诞老人是哪家快递的?活了十多年都没收到,差评。
  • 百日宣言,鸣惊天下。
  • 愿你如月光,明亮不清冷。
  • 有志者自有千计万计,无志者只感千难万难。
  • 年轻的态度与年轻的精神可以抹去心灵和面容上的皱纹,使眼睛充满光亮,使你看到未来。
http://www.lbrq.cn/news/2626183.html

相关文章:

  • 虚拟机怎么做多个网站百度seo插件
  • 外贸有哪些网站西安网站制作
  • ps做网站首页怎么国际新闻 军事
  • 云匠网要交钱才能用吗广州aso优化公司 有限公司
  • 阿里巴巴的网站应该怎么做北京营销型网站
  • alipay域名网站什么是搜索引擎优化seo
  • 可以做动态图表的网站百度官方网站
  • 车辆保险网站无货源电商怎么做
  • 计算机培训班有哪些湖北seo关键词排名优化软件
  • 广告设计制作方案seo服务商技术好的公司
  • 二 网站建设的重要性搜索引擎优化seo课程总结
  • 企业宣传片视频模板seo推广软件代理
  • 关于企业网站建设的提案百度认证证书
  • 湖南株洲网站建设seo顾问服务咨询
  • 做服装网站宣传太原seo网站优化
  • 做网站需要规划好什么高端网站建设南宁
  • 网站建设公司领导致辞济南网站推广
  • 做免费采集电影网站犯法吗网站友情链接连接
  • 中铁建设投资集团有限公司网站口碑营销的优势有哪些
  • 网站改版后多久才收录百度搜索引擎关键词优化
  • 郑州做网站外包的公司昆明网站开发推广公司
  • 网站建设吉金手指排名14百度站长资源平台
  • 手机网站和微信网站的区别网站推广和seo
  • 专业网站制作团队免费收录平台
  • 北京企业网站建设多少钱河南网站网络营销推广
  • 做视频网站资质海南百度推广公司
  • 我的家乡网页设计素材西安网络seo公司
  • 做网站在哪里可以找到高清壁纸seo推广多少钱
  • 游戏类网站怎么做免费推广网
  • 杭州维利国德网站建设案例网络营销的主要内容有哪些
  • Docker Buildx最佳实践:多架构镜像构建指南
  • 【驱动】RK3576-Debian系统使用ping报错:socket operation not permitted
  • 安卓10.0系统修改定制化____修改系统固件 实现刷写完成 开机默认关闭桌面搜索框
  • LabVIEW注册表操作
  • Unity 调节 Rigidbody2D 响应速度的解决方案【资料】
  • 芯片分享【昆泰】——CH7305A -display controller device.