利用spring注解,可以為實體類的屬性指派,作用就類似于在配置檔案裡指派一樣。
值得類型可以是内容,也可以進行計算,同時也可以引入配置檔案的值。
public class Person {
//使用@Value指派;
//1、基本數值
//2、可以寫SpEL; #{}
//3、可以寫${};取出配置檔案【properties】中的值(在運作環境變量裡面的值)
@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 + "]";
}
}
其中20-2就進行了計算,最後的值是18。
nickName則是引入了配置檔案的值。如需配置檔案,則需要在配置類上指定檔案的路徑位置
//使用@PropertySource讀取外部配置檔案中的k/v儲存到運作的環境變量中;加載完外部的配置檔案以後使用${}取出配置檔案的值
@PropertySource(value={"classpath:/person.properties"})
@Configuration
public class MainConfigOfPropertyValues {
@Bean
public Person person(){
return new Person();
}
}