springboot(十一)--application的配置使用yml代替properties

本文介绍如何在Spring Boot项目中使用YML配置文件替代传统的Properties文件,包括YML的基本语法特点及其在实际项目配置中的应用示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如题,之前的几篇中我们都是使用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!!

 

是的,你可以使用 Nacos 作为配置中心,代替 Spring Boot 的默认配置文件application.ymlapplication.properties)来管理应用程序的配置。这种方式可以提高配置的灵活性和可管理性,特别是在微服务架构中使用。 具体的步骤如下: 1. 在 Spring Boot 项目中引入 Nacos 的依赖: ```xml <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <version>2.2.5.RELEASE</version> </dependency> ``` 2.application.yml 中添加 Nacos 的配置信息: ```yaml spring: cloud: nacos: config: server-addr: ${NACOS_SERVER_ADDR:localhost:8848} namespace: ${NACOS_NAMESPACE:} group: ${NACOS_GROUP:DEFAULT_GROUP} ``` 其中,`server-addr` 是 Nacos 服务端的地址,`namespace` 是命名空间,`group` 是配置组名,默认为 `DEFAULT_GROUP`。 3. 在 Nacos 中创建配置信息: 在 Nacos 管理界面中创建一个配置信息,如下所示: ![nacos-config.png](https://cdn.jsdelivr.net/gh/smileArchitect/img-bed/blog/20210616172451.png) 其中,`data-id` 对应的是配置文件的名称,`group` 对应的是配置组名,`content` 对应的是配置文件的内容。 4. 在 Spring Boot 项目中使用 Nacos 的配置信息: 在代码中使用 `@Value` 注解来注入 Nacos 的配置信息,如下所示: ```java @RestController public class HelloController { @Value("${config.name}") private String name; @GetMapping("/hello") public String hello() { return "Hello " + name; } } ``` 其中,`${config.name}` 对应的是 Nacos 中配置的 `data-id`。 这样就可以使用 Nacos 作为配置中心来管理应用程序的配置了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值