@Value的使用

《Spring源码解析》笔记ide

使用@Value赋值;
一、基本数值
二、能够写SpEL; #{}
三、能够写${};取出配置文件【properties】中的值(在运行环境变量里面的值)

1.建立一个类Personthis

   其中使用到了第一种和第二种,直接使用@Value进行赋值spa

public class Person {
    @Value("张三")
    private String name;
    @Value("#{20-2}")
    private Integer age;
    
    @Value("${person.nickName}")
    private String nickName;
    public String getNickName() {
        return nickName;
    }
    public void setNickName(String nickName) {
        this.nickName = nickName;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Integer getAge() {
        return age;
    }
    public void setAge(Integer age) {
        this.age = age;
    }
    
    public Person(String name, Integer age) {
        super();
        this.name = name;
        this.age = age;
    }
    public Person() {
        super();
        // TODO Auto-generated constructor stub
    }
    @Override
    public String toString() {
        return "Person [name=" + name + ", age=" + age + ", nickName=" + nickName + "]";
    }

二、若是但愿使用第三种,那么${}code

   首先须要建立一个person.properties文件,内容以下:blog

   

person.nickName=\u5C0F\u674E\u56DB

在配置类中须要使用注解PropertySource,将配置文件里面的信息加载到运行环境中。get

使用@PropertySource读取外部配置文件中的k/v保存到运行的环境变量中;加载完外部的配置文件之后使用${}取出配置文件的值源码

@PropertySource(value={"classpath:/person.properties"})
@Configuration
public class MainConfigOfPropertyValues {
    
    @Bean
    public Person person(){
        return new Person();
    }

}
相关文章
相关标签/搜索