Spring中spring-context-indexer依赖有什么用

技术Spring中spring-context-indexer依赖有什么用这篇文章给大家分享的是有关Spring中spring-context-indexer依赖有什么用的内容。小编觉得挺实用的,因此分享给大家做个参考,

本文是关于spring中Spring上下文索引器依赖的使用。我觉得边肖很实用,就和大家分享一下作为参考。让我们跟着边肖看一看。

Spring spring-context-indexer依赖

相关性

属国

groupIdorg.springframework/groupId

artifactIdspring-上下文索引器/artifactId

version5.2.0.RELEASE/version

可选用户/可选用户

/依赖性

/dependencies虽然类路径扫描非常快,但是Spring中有大量的类。添加这种依赖关系可以通过在编译时创建候选对象的静态列表来提高大规模应用程序的启动性能。

在这种模式下,作为组件扫描目标的所有模块都必须使用这种机制。

配置springboot启动时自动打开浏览器 spring-context-indexer原理

int port=8080;

stringport prefix='-server . port=';

for(string : args){ 0

if(arg.startsWith(端口前缀)){ 0

port=integer . parseint(arg . substring(portprefix . length()));

}

}

springapplication . run(appregisterapplication . class,args);

尝试{

Runtime.getRuntime()。exec(' cmd/cstart http://localhost : '端口);

} catch(IOexceptione){ 0

e . printstacktrace();

}现在使用的springboot项目比较大,每次启动都很慢,所以用下面的依赖项,加速:的启动。

spring-context-indexer

说明

1.虽然类路径扫描非常快,但是Spring中有大量的类。添加这种依赖关系可以通过在编译时创建候选对象的静态列表来提高大规模应用程序的启动性能。

2.但是,在这种模式下,作为组件扫描目标的所有模块都必须使用这种机制。只有那时。

3.根据以下:需要使用spring5或更高版本,并且母测试有效

属国

groupIdorg.springframework/groupId

artifactIdspring-上下文索引器/artifactId

version5.2.0.RELEASE/version

可选用户/可选用户

/dependency,然后在启动类中添加一个note : @Indexed,表示如果打开索引,将加快项目的启动速度。

原理说明:

先看官方解释:

Spring中spring-context-indexer依赖有什么用

在项目中使用@Indexed后,编译打包时项目中会自动生成META-INT/spring.components文件。

当Spring应用程序上下文执行ComponentScan时,META-INT/spring.components将被CandidateComponentsIndex loader读取和加载,并转换为candidate components sindex对象。在这种情况下,@ComponentScan不是扫描指定的包,而是读取CandidateComponentsIndex对象,从而提高性能。

使用需注意点

虽然这个@Indexed注释可以提高性能,但是在使用它时应该注意它。

假设spring应用程序中有一个包含META-INT/spring.components资源的A. JAR,b.jar中只存在模式注释,那么在使用@ ComponentScan扫描这两个JAR中的包时,B. jar中的模式注释将无法被识别。

请注意这样的问题。

感谢阅读!我希望在这里分享这篇关于“spring中Spring上下文索引器依赖有什么用”的文章。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/77259.html

(0)

相关推荐

  • python字典一些常见的魔法方法以及遇到的面试题有哪些

    技术python字典一些常见的魔法方法以及遇到的面试题有哪些本篇文章给大家分享的是有关python字典一些常见的魔法方法以及遇到的面试题有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,

    攻略 2021年10月21日
  • oracle11g dataguard如何切换

    技术oracle11g dataguard如何切换这篇文章主要介绍“oracle11g dataguard如何切换”,在日常操作中,相信很多人在oracle11g dataguard如何切换问题上存在疑惑,小编查阅了各式

    攻略 2021年11月11日
  • Win10系统下如何将VSCode配置到右键菜单中

    技术Win10系统下如何将VSCode配置到右键菜单中这篇文章将为大家详细讲解有关Win10系统下如何将VSCode配置到右键菜单中,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。教程新

    攻略 2021年11月12日
  • Redis中sentinel故障转移的示例分析

    技术Redis中sentinel故障转移的示例分析这篇文章主要为大家展示了“Redis中sentinel故障转移的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Red

    攻略 2021年10月28日
  • linux下phpmyadmin的配置文件是什么意思

    技术linux下phpmyadmin的配置文件是什么意思这篇文章主要介绍linux下phpmyadmin的配置文件是什么意思,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!发现问题:linux下的p

    攻略 2021年11月24日
  • VSCode的使用技巧有哪些

    技术VSCode的使用技巧有哪些本篇内容主要讲解“VSCode的使用技巧有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“VSCode的使用技巧有哪些”吧!1. 查看日志步

    攻略 2021年10月27日