Java中的ConfigurationProperties注解

在Java中,@ConfigurationProperties注解是Spring Boot框架提供的一个注解,用于将配置文件中的属性绑定到一个类上。

通过@ConfigurationProperties注解可以将配置文件中的属性值注入到一个类的属性中,省去了手动读取配置文件的过程。

使用@ConfigurationProperties注解时,需要在类上添加@Component注解,使其成为一个组件,然后再添加@ConfigurationProperties注解并指定prefix属性,指定要绑定的配置文件属性的前缀。

示例代码:

package com.example.springbootinit;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

@Component
@ConfigurationProperties(prefix = "person")
public class Person {
    private String name;
    private int age;
    
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}

在上面的示例中,添加了@Component注解,并使用@ConfigurationProperties注解将配置文件中以"person"为前缀的属性绑定到Person类的对应属性上。

假设配置文件中有以下属性:

server:
  port: 8080

name: abc

person:
  name: zhangsan
  age: 20

通过自动装配的方式,即在其他组件中使用@Autowired注解将Person类注入进来,就可以获取到配置文件中对应的属性值。

@ConfigurationProperties注解还有其他可以配置的属性,例如ignoreUnknownFields,用于指定是否忽略在类中找不到对应属性的配置文件属性;ignoreInvalidFields,用于指定是否忽略配置文件中的无效属性等等。

总之,@ConfigurationProperties注解在Java中用于将配置文件中的属性值注入到一个类的属性中,方便程序使用配置文件中的属性。

猜你喜欢

转载自blog.csdn.net/m0_62600503/article/details/131861309