@PropertySource注解使用

平时用@PropertySource注解的时候,常用两种模式
@PropertySource + @Value
@PropertySource 和 @ConfigurationProperties
具体用法这里不做解释,自行百度。

今天发现@PropertySource 和 @ConfigurationProperties 模式对类中的引用类同样起作用,记录一下

febs.properties,注意这里是“前缀+类名+属性”

# test相关配置
test.user.name=David.Huang
test.user.age=23

TestProperties.java

import lombok.Data;
import org.springframework.boot.SpringBootConfiguration;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.PropertySource;


@Data
@SpringBootConfiguration
@PropertySource(value = {"classpath:test.properties"})
@ConfigurationProperties(prefix = "test")
public class TestProperties {

    private User user = new User();
}

User.java

@Data
public class User {

    private String name;
    private String age;
}

测试方法:

@Test
public void getProperties(){
	System.out.println("name:"+properties.getUser().getName());
	System.out.println("age:"+properties.getUser().getAge());
}

输出结果:
在这里插入图片描述

你可能感兴趣的:(java,spring)