ITPub博客

首页 > 数据库 > 数据库开发技术 > SpringBoot中的配置文件你了解多少?

SpringBoot中的配置文件你了解多少?

原创 数据库开发技术 作者:IT枫斗者 时间:2021-10-27 11:41:02 0 删除 编辑

今天我们介绍下SpringBoot 的工程结构中 scr/main/resources目录,该目录是SpringBoot的配置目录,所以当要创建个性化配置时,应在该目录下进行。


SpringBoot的默认配置文件位置为src/main/resources/application.properties。关于SpringBoot应用的配置内容都可以集中在该文件中,根据我们引入的不同Starter模块,可以在这里定义容器端口号,数据库连接信息、日志级别等各种配置信息。比如,我们需要自定义Web模块的服务端口号,可以在application.properties中添加server.port=8888来指定服务端口为8888,也可以通过spring.application.name=hello,来指定应用名。


SpringBoot的配置文件除了可以使用传统的properties文件之外,还支持现在被广泛推荐使用YAML文件。


YAML采用的配置格式不像properties的配置那样以单纯的键值对形式来表示,而是以类似大纲的缩进形式来表示。下面是一段YAML配置信息:

environments:    dev:      url:http://javatiaozaowang.com      name:Developer Setup    prod:      url:http://javatiaozaowang.com      name: My Cool App

与其等价的properties配置如下所示:

environments.dev.url=http://javatiaozaowang.comenvironments.dev.name=Developer Setupenvironments.prod.url=http://javatiaozaowang.comenvironments.prod.name=My Cool App

通过YAML的配置方式我们可以看到,配置信息利用阶梯化缩进的方式,其结构更为清晰易读,同时配置内容的字符量也得到显著减少。除此之外,YAML还可以在一个单个文件中通过使用spring.profiles属性来定义多个不同的环境配置。例如下面的内容,在指定为test环境时,server.port将使用8882端口;而在prod环境中,server.port将8883端口;如果没有指定环境,server.port将使用8881端口

server:    port:8881 --- spring:     profiles:test server:     port:8882 --- spring:     profiles:prod server:     port:8883

注意:YAML目前还有一些不足,它无法通过@PropertySource注解来加载配置。但是,YAML将属性加载到内存中保存的时候是有序的,所以当配置文件中的信息需要具备顺序含义时,YAML的配置方式比起properties配置文件更有优势。


原文作者:IT枫斗者;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论
大家好,我是枫哥,🌟阿里云技术专家、📝资深面试官、🌹Java跳蚤网课堂创始人。技术交流vx:itfdz666,拥有多年一线研发经验,曾就职过科大讯飞、美团网、平安等公司。看面试实战视频可以关注b站号:IT枫斗者–Java面试。需要看技术文章,可以关注CSDN:IT枫斗者。

注册时间:2020-05-13

  • 博文量
    183
  • 访问量
    81331