很多人都不知道这个包的真实作用
在网上搜索了一下,一大堆都是复制粘贴的,不少博客都是说这个包是用来加载传统的xml或者properties配置,其实这都是错的。没有springboot的时候照样有方法加载。

spring官网说明
这个包的作用是生成配置元数据,比如你平常在yml文件里面配置

server:
  port: 8080
  #你在idea里面可以点击port,进到这个字段里面,还可以看到配置的提示信息
aaa:
  bbb: haha
  # 自己自定义的就不能点击

这是因为在你的资源文件里面有一个spring-configuration-metadata.json文件,这是spring配置的元数据,是json形式

spring-boot-configuration-processor其实是一个注解处理器,在编译阶段干活的,一般在maven的声明都是 ,optional 为true
 

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>

官网原文

You can easily generate your own configuration metadata file from items annotated with @ConfigurationProperties by using the spring-boot-configuration-processor jar. The jar includes a Java annotation processor which is invoked as your project is compiled. To use the processor, include a dependency on spring-boot-configuration-processor.

百度翻译一下:
通过使用spring boot配置处理器jar,您可以从用@ConfigurationProperties注释的项轻松生成自己的配置元数据文件。jar包含一个Java注释处理器,在编译项目时调用它。要使用处理器,请包含对spring boot配置处理器的依赖。

spring-boot-configuration-processor说白了就是给自定义的配置类生成元数据信息的,因为spring也不知道你有哪些配置类,所以搞了这个方便大家自定义

spring-boot-configuration-processor源码包结构
 

————————————————
版权声明:本文为CSDN博主「平原人」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43328357/article/details/106993172

GitHub 加速计划 / sp / spring-boot
73.97 K
40.4 K
下载
spring-projects/spring-boot: 是一个用于简化Spring应用开发的框架。适合用于需要快速开发企业级Java应用的项目。特点是可以提供自动配置、独立运行和内置的Tomcat服务器,简化Spring应用的构建和部署。
最近提交(Master分支:1 个月前 )
fdf24c6c Closes gh-42976 6 天前
3c42ba8c * pr/42974: Fix copyright year of updated file Polish Closes gh-42974 6 天前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐