@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();
    }

}
相關文章
相關標籤/搜索