当前位置:   article > 正文

Spring Boot Configuration Processor使用

Spring Boot Configuration Processor使用

一、功能介绍

spring-boot-configuration-processor的作用就是将自己的配置你自己创建的配置类生成元数据信息,这样就能在你自己的配置文件中显示出来非常的方便。在META-INF目录下生成spring-configuration-metadata.json文件,从而告诉spring这个jar包中有哪些自定义的配置。

二、使用方式

1、项目中添加对应的依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>
  • 1
  • 2
  • 3
  • 4
  • 5

2、创建ConfigProperties文件

@Data
@Component
@ConfigurationProperties(prefix = "yuluo")
public class MyProperties {
    public String name = "";
    public int age = 0;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

3、编译项目,即可自动在META-INF下生成对应的json文件
在这里插入图片描述
格式如下:

{
  "groups": [
    {
      "name": "yuluo",
      "type": "com.yuluo.springbootconfigurationprocessordemo.properties.MyProperties",
      "sourceType": "com.yuluo.springbootconfigurationprocessordemo.properties.MyProperties"
    }
  ],
  "properties": [
    {
      "name": "yuluo.age",
      "type": "java.lang.Integer",
      "sourceType": "com.yuluo.springbootconfigurationprocessordemo.properties.MyProperties",
      "defaultValue": 0
    },
    {
      "name": "yuluo.name",
      "type": "java.lang.String",
      "sourceType": "com.yuluo.springbootconfigurationprocessordemo.properties.MyProperties",
      "defaultValue": ""
    }
  ],
  "hints": []
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

4、配置文件中使用,可以看见有相应的提示,方便使用
在这里插入图片描述

yuluo.age=30
yuluo.name=yuluo
  • 1
  • 2

5、test方法测试

@SpringBootTest
class SpringBootConfigurationProcessorDemoApplicationTests {

    @Autowired
    private MyProperties myProperties;

    @Test
    void contextLoads() {
        System.out.println(myProperties.name);
        System.out.println(myProperties.age);
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

6、结果如下
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/243519
推荐阅读
相关标签
  

闽ICP备14008679号