SpringBoot两种配置文件properties/yml+读取配置文件内容+profile

2.SpringBoot配置文件

spring boot提供了两种配置文件,properties和yml/yaml,各种改配置文件格式如图:
在这里插入图片描述

3.读取配置文件内容

有三种方式:
 1.@value
 2.Environment
 3.@ConfigurationProperties
@Value方式测试:
步骤:
先在控制类里定义变量准备接收---->使用@Value注释,格式@Value(“${参数名}”)----->在函数里打印出来
坑:
数组的接收并不是定义一个数组整个接受,而是将yml里数组的元素逐一拿出来,用单一变量接收。
如图:
yml
在这里插入图片描述

代码和结果
在这里插入图片描述
在这里插入图片描述
Environment方式测试:
新建Environment对象---->使用注解—>在函数调用对象的getProperty方法
在这里插入图片描述

@ConfigurationProperties方法测试
假设有一个类叫person,需要将配置文件中的关于person的属性值传递给(或者说赋值给)person类中的变量,则使用这个方法。
步骤:
写一个类---->给类添加两个注释----->controller使用Autowired注释,创建一个person对象------>直接在函数内输出整个person对象(当然也可以单个输出)
坑:使用@ConfigurationProperties注释时要指定prefix是谁,不然如果有两个name的话,它会自动匹配第一个name。接收数组需要在person类内新建一个数组,然后再遍历输出。
代码和结果:
在这里插入图片描述
在这里插入图片描述

4.profile

开发一套产品,会将其放到开发、测试、实际生产的环境中,每个环境的配置比如数据库、端口等不尽相同,profile就是用来动态配置这些东西的,写完文件之后还需要激活才能生效。

两种配置方式:多profile文件和yml多文档
三种激活方式:配置文件、虚拟机参数、命令行参数

在这里插入图片描述

多profile文件+配置文件激活:
application-dev.properties-------端口号8081
application-pro.properties-------端口号8082
application-test.properties-------端口号8083
在这里插入图片描述
不激活任何一个文件时(使用默认),端口号是8080
在这里插入图片描述
在配置文件application.properties里分别激活三个:
在这里插入图片描述
结果:
端口号是8081,说明application-dev.properties生效
在这里插入图片描述
在这里插入图片描述

结果:
端口号是8082,说明application-pro.properties生效
在这里插入图片描述

结果:
端口号是8083,说明application-test.properties生效
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值