【黑马程序员笔记】SpringBoot基础配置-创新互联
SpringBoot基础配置
网站标题:【黑马程序员笔记】SpringBoot基础配置-创新互联
转载注明:http://hbruida.cn/article/cesshj.html
- 配置优先级
- 配置格式
- properties格式
- yml(主流)、 yaml格式
- 数据读取
- 使用@Value读取单个数据,属性名引用方式:${一级属性名.二级属性名}
- 封装全部数据到Environment对象
- 自定义对象封装指定数据
支持application.properties >application.yml >application.yaml 三种配置
如果配置信息重复 优先级为上,如果配置信息不重复则都生效
server.port=80
yml(主流)、 yaml格式server:
port: 81
enterprise:
name:
itcast age: 16
tel: 4006184000
可以引用属性
使用“${ }”
baseDir: /usr/local/fire
center: dataDir: ${baseDir}/data
tmpDir: ${baseDir}/tmp
logDir: ${baseDir}/log
msgDir: ${baseDir}/msgDir
属性值中如果出现转移字符,需要使用双引号包裹
lesson: "Spring\tboot\nlesson”
- 大小写敏感
- 属性层级关系使用多行描述,每行结尾使用冒号结束
- 使用缩进表示层级关系,同层级左侧对齐,只允许使用空格(不允许使用Tab键)
- 属性值前面添加空格(属性名与属性值之间使用冒号+空格作为分隔)
- “# ”表示注释
- 核心规则:数据前面要加空格与冒号隔开
server:
port: 81
@Value("${server.port}")
private int port;
封装全部数据到Environment对象lesson: SpringBoot
server:
port: 82
enterprise:
name: itcast
age: 16
tel: 4006184000
subject:
- Java
- 前端
- 大数据
@RestController
@RequestMapping("/books")
public class BookController {@Autowired
private Environment env;
@GetMapping("/{id}")
public String getById(@PathVariable Integer id){System.out.println(env.getProperty("lesson"));
System.out.println(env.getProperty("enterprise.name"));
System.out.println(env.getProperty("enterprise.subject[0]"));
return "hello , spring boot!";
}
}
自定义对象封装指定数据enterprise:
name: itcast
age: 16
tel: 4006184000
subject:
- Java
- 前端
- 大数据
- 使用@ConfigurationProperties注解绑定配置信息到封装类中
- 封装类需要定义为Spring管理的bean,否则无法进行属性注入
@Component
@ConfigurationProperties(prefix = "enterprise")
public class Enterprise {private String name;
private Integer age;
private String[] subject;
}
@RestController
@RequestMapping("/books")
public class BookController {@Autowired
private Enterprise enterprise;
}
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
网站标题:【黑马程序员笔记】SpringBoot基础配置-创新互联
转载注明:http://hbruida.cn/article/cesshj.html