Spring5--@Indexed注解
引
Spring Framework 5.0作为 Spring Boot 2.0 的底层核心框架,就目前已经发布的版本来看,相对于 Spring Framework 4.x 而言,注解驱动的性能提升不是那么明显。然而随着 Spring Framework 注解驱动能能力逐渐受到开发人员的关注,尤其在 Spring Boot 应用场景中,大量使用注解 @CompoentScan 扫描指定的 package,当扫描的 package 所包含的类越多时,Spring 模式注解解析的耗时就越长。对于这个问题,Spring Framework 5.0 版本引入的注解 @Indexed,为 Spring 模式注解添加索引,以提升应用启动性能。
举个栗子:
@Indexed
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {}
但是,注解 @Indexed 不能孤立地存在,需要在工程 pom.xml 中增加 org.springframework:spring-context-indexer 依赖:
<dependency><groupId>org.springframework</groupId><artifactId>spring-context-indexer</artifactId><optional>true</optional>
</dependency>
当工程打包为 JAR 或在 IDE 工具中重新构建后,METE-INF/spring.components 文件将自动生成。换言之,该文件在编译时生成。当 Spring 应用上下文执行 @CompoentScan 扫描时,METE-INF/spring.components 将被 CandidateComponentsIndexLoader 读取并加载,转化为 CandidateComponentsIndex 对象,进而 @CompoentScan 不再扫描指定的 package,而是读取 CandidateComponentsIndex 对象,从而达到提升性能的目的。
Spring5--@Indexed注解相关推荐
- SpringFramework5.0 @Indexed注解 简单解析
使用场景 在应用中有大量使用@ComponentScan扫描的package包含的类越多的时候,Spring模式注解解析耗时就越长. 使用方法 在项目中使用的时候需要导入一个spring-contex ...
- java Spring5 Nullable注解使用
java Spring5 核心容器 支持 @Nullable注解 这个注解 可以使用在 方法 属性 参数上 它表示 如果用在方法上 则方法返回值可以为空 如果用在属性上 说明属性值可以为空 用在参数上 ...
- spring5之IOC入门笔记
下一篇-spring代理 目录 第一章 spring概述 第二章 IOC之XML方式管理bean 2.1导入依赖 2.2 创建容器 2.3 获取Bean对象 2.4 bean对象设置别名 2.5 be ...
- JAVAEE框架之Spring新注解
五.Spring5 新注解 新的注解有用,为后面的SpringBoot可以打一个基础,因为到SpringBoot的课程, 多了很多注解.这时候,先了解一部分. 5.1 @Configuration ...
- 最新整理Spring面试题2023
Spring面试专题 1.Spring应该很熟悉吧?来介绍下你的Spring的理解 有些同学可能会抢答,不熟悉!!! 好了,不开玩笑,面对这个问题我们应该怎么来回答呢?我们给大家梳理这个几个维度来回答 ...
- 实用到爆,这样优化SpringBoot系统启动速度提高100倍
微服务用到一时爽,没用好就呵呵啦,特别是对于服务拆分没有把控好业务边界.拆分粒度过大等问题,某些 Spring Boot 启动速度太慢了,可能你也会有这种体验,这里将探索一下关于 Spring Boo ...
- 这样优化Spring Boot,启动速度快到飞起!
微服务用到一时爽,没用好就呵呵啦,特别是对于服务拆分没有把控好业务边界.拆分粒度过大等问题,某些 Spring Boot 启动速度太慢了,可能你也会有这种体验,这里将探索一下关于 Spring Boo ...
- 【springboot系列】这样优化Spring Boot,启动速度快到飞起!
微服务用到一时爽,没用好就呵呵啦,特别是对于服务拆分没有把控好业务边界.拆分粒度过大等问题,某些 Spring Boot 启动速度太慢了,可能你也会有这种体验,这里将探索一下关于 Spring Boo ...
- 还在直接操作 Redis?赶快来试试这个
以下文章来源方志朋的博客,回复"666"获面试宝典 有些人还在直接用Jedis操作Redis数据库,但这种方式非常不方便,而且很不灵活.用Spring Boot整合Redis之后, ...
- mongodb morphia
原文:http://www.blogjava.net/watchzerg/archive/2012/09/20/388109.html 快速开始: @Entity public class Hotel ...
最新文章
- echarts X轴 或者 Y轴 添加标识线
- Android新闻类导航栏
- 前缀 中缀 后缀表达式
- 总算是把用户流失分析讲清楚了!
- 一文带你认识FPGA~
- python 比例之差z假设检验_假设检验在数据分析中的应用
- 研究生导师一般希望招什么样的研究生?
- Linux操作系统下三种配置环境变量的方法
- 周子学辞任中芯国际董事长
- linux shutdown 命令
- 自己实现一个简易web服务器
- 【深度语义匹配模型】实践篇:语义匹配在贝壳找房智能客服中的应用
- C++11 右值引用与移动语义
- 微信小程序icon控件
- SolidWorks软件远程安装协助
- 开发商给埋的五类网线,家中想改为千兆网络怎么办好?
- 小米系列手机(包括红米,黑鲨)开启调试模式
- 怎么在服务器上搭建网站(搭建服务器需要什么)
- 三菱plc232数据线驱动下载_程序怎么上传下载?以西门子S7-200PLC为例为你讲解
- 程序查询方式、程序中断方式和DMA方式
热门文章
- costmap代价地图学习
- AT89C51单片机8位竞赛抢答器_倒计时可调仿真设计
- 远程医疗监护系统开发
- batchplot 3.6.2 插件_插件分享 | 可在线查询子域名和同IP域名的RapidDNS
- java IE11浏览器文件下载的文件名乱码
- 计算机共享w7系统文件共享,win7系统怎么共享文件 电脑一键共享文件方法教程...
- 13、TWS API和IB中的历史数据
- MFC 鼠标光标资源 及 更换
- 某电商商品搜索系统架构设计
- midi是计算机合成音乐文件,多媒体音频详解.ppt