赞
踩
目录
三、@ConfigurationProperties读取配置文件
配置文件的后缀可以是yaml或者yml,写法类似于键值形式
这些数据都是自己自定义的,自己取名的
- 语法:
- 数据名:值
-
- (注意冒号后面加空格)
- 举例:
-
- email: ioio
- 对象:
- 属性名1:值1
- 属性名2:值2
-
-
-
- 举例:
- my:
- address: sd
- school: op
- 集合:
- -值1
- -值2
-
- 举例:
-
- -后面要加空格
- you:
- - beijing
- - anhui
- - tainjin
-
-
- list1:
- - name: zhangsan
- age: 18
- sex: male
- - name: lisi
- age: 20
- sex: fmale
- - name: wangwu
- age: 19
- sex: male

@Value只能映射简单数据类型,不能将yml配置文件中的对象,集合映射到属性中去。
@Controller public class controller { @Value("${my.school}") private String school; @Value("${you[1]}") private String ci; @Value("${list1[1].name}") private String list_name; @ResponseBody @RequestMapping("/c") public String v1(){ System.out.print(school+" "+ci+" "+list_name); return "hello springt"; } }yml配置文件
my: address: sd school: op you: - beijing - anhui - tainjin list1: - name: zhangsan age: 18 sex: male - name: lisi age: 20 sex: fmale - name: wangwu age: 19 sex: male
通过@ConfigurationProperties(prefifx="对象")可以将配置文件中的配置自动与实体映射,这样就可以将yml文件中配置的对象属性直接映射到Bean中。
说的简单点,比如配置文件写的如下:
user: username: lisi age: 88 address: - beijing - anhui - tianjing grades: - subject: math score: 90 - subject: english score: 88
@Controller @ConfigurationProperties(prefix = "user") public class MyController1 { private String username; private int age; private List<String> address; private List<grade> grades; @ResponseBody @RequestMapping("/con") public String t1(){ System.out.println(username); System.out.println(age); System.out.println(address); System.out.println(grades); return "sp"; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public List<String> getAddress() { return address; } public void setAddress(List<String> address) { this.address = address; } public List<grade> getGrades() { return grades; } public void setGrades(List<grade> grades) { this.grades = grades; } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。