欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SpringBoot注解@ConfigurationProperties配置绑定

程序员文章站 2022-03-09 19:00:56
...

@ConfigurationProperties配置绑定

<font color=#999AAA



前言

如何使用Java读取到properties文件中的内容,并且把它封装到JavaBean中,以供随时使用;


提示:以下是本篇文章正文内容,下面案例可供参考

一、原先加载配置文件内容并绑定操作

如下

public class getProperties {
     public static void main(String[] args) throws FileNotFoundException, IOException {
         Properties pps = new Properties();
         pps.load(new FileInputStream("a.properties"));
         Enumeration enum1 = pps.propertyNames();//得到配置文件的名字
         while(enum1.hasMoreElements()) {
             String strKey = (String) enum1.nextElement();
             String strValue = pps.getProperty(strKey);
             System.out.println(strKey + "=" + strValue);
             //封装到JavaBean。
         }
     }
 }

二、配置@ConfigurationProperties

1.配合@Component

代码如下(示例):

在properties文件中写入

mycar.brand=BYD
mycar.price=1000
/**
 * 只有在容器中的组件,才会拥有SpringBoot提供的强大功能
 */
@Component
@ConfigurationProperties(prefix = "mycar")
public class Car {

    private String brand;
    private Integer price;

    public String getBrand() {
        return brand;
    }

    public void setBrand(String brand) {
        this.brand = brand;
    }

    public Integer getPrice() {
        return price;
    }

    public void setPrice(Integer price) {
        this.price = price;
    }

    @Override
    public String toString() {
        return "Car{" +
                "brand='" + brand + '\'' +
                ", price=" + price +
                '}';
    }
}

这样就将mycar数据与car绑定了

2.与@EnableConfigurationProperties配合

代码如下(示例):

@EnableConfigurationProperties(Car.class)
//1、开启Car配置绑定功能
//2、把这个Car这个组件自动注册到容器中
public class MyConfig {
}

@EnableConfigurationProperties注解在配置类上
通常使用在加载导入的Class中不方便改这个类的配置,就将此类引出并添加@EnableConfigurationProperties标签

相关标签: spring boot spring