如题,之前的几篇中我们都是使用properties文件配置全局的application配置。其实呢,springboot更推荐使用application.yml代替application.properties,另外由于properties的配置文件含中文时读取会乱码,而在yml中不会,因此建议大家使用yml配置文件替换properties配置文件
yml格式的特点:
1、 大小写敏感
2、使用缩进表示层级关系
3、缩进时不允许使用Tab键,只允许使用空格
4、缩进的空格数目不重要,只要相同层级的元素左侧对齐即可. (通常采用两个空格表示一个缩进)
参考阅读:http://www.ruanyifeng.com/blog/2016/07/yaml.html (阮一峰)
yml可表示对象、数组、纯量 ,也支持函数、正则表达式等。
我们将项目中的application.properties 、application-{dev|test|prod}.properties 文件修改为yml格式
application.yml
#服务器基本配置(端口、应用名称等)
server:
port: 7000
context-path: /springWeb
#dev热加载工具
spring:
devtools:
restart:
enable: true
exclude: resouces/**
#jsp视图
mvc:
view:
prefix: /WEB-INF/pages
#suffix: .jsp
#multipart 文件上传
http:
multipart:
maxFileSize: 10Mb #限制一次上传的单个文件的大小
maxRequestSize: 10Mb #限制一次上传的所有文件的总大小
#profile 配置
profiles:
active: dev # 当前激活的profile (dev test prod)
application-dev.yml
app:
myname: 这是开发环境app
application-test.yml
app:
myname: 这是测试环境app
application-prod.yml
app:
myname: 这是生产环境app
-------------------
当然,yml文件中也可以使用${xxx}表达获取前面已经定义的变量(属性),例如 :
spring:
application:
name: springWeb
instance-id: ${spring.application.name}:${server.port} #取自前面已定义的属性
ok!!