properties和yml

properties和yml

  • https://www.jianshu.com/p/6a30fe18e850
  • Spring Boot 配置文件主要分为.properties.yml
  • 特殊说明:
  • 1.当一个项目中存在两种格式的配置文件,并且两个配置文件中设置了相同的配置项,但值不同时,那么 properies 的优先级更高。
  • 2.通常情况一个项目中只会存在一种格式的配置文件。
  • (1)yml 基本写法
  • yml 是树形结构的配置文件,它的基础语法是“key: value”,注意 key 和 value 之间使用英文冒汗加空格的方式组成的,其中的空格不可省略。

  • yml 中如果使用了双引号就会按照(原)语义执行,如果都不加,或者加了单引号那么默认就会将字符串中的特殊字符进行转义(本来应该换行的,转义后就不换行了)
  • 在 yml 中配置对象, 这个时候需要使用注解 @ConfigurationProperties 来读取
  • 该注解中有一个属性 prefix, 用于指定获取配置的前缀
  • (prefix="person")

  • (2) properties基本语法
  • properties 是以键值的形式配置的, key=value 中间是以 “=” 连接的

配置项目端口号

  • server.port=8888

连接数据库

  • spring.datasource.url=jdbc:mysql://127.0.0.1:3306/testdb?characterEncoding=utf8
  • spring.datasource.username=root
  • spring.datasource.password=123456
  • 如果在项目中, 想要主动读取配置文件中的内容, 可以使用 @Value 注解来实现
  • @Value 注解使用 "${}" 的格式读取

  • public class TestController {
  • @Value("}")
  • private String mytext;
  • @RequestMapping("/getMytext")
  • public String getConfig(){
  • return "你好: " + mytext;
  • }
  • }

配置文件优先级

1.内部配置文件的优先级

内部配置加载顺序

1.file:./config/:当前目录下的/config目录下

2.file:./:当期项目的根目录

3.classpath:/config/:classpath的/config目录

4.classpath:/:classpath的根目录

设置项目访问路径

server.servlet.context-path=/demo

2.外部配置文件

  1. 运行jar包时指定端口,会优先执行命令行指定的端口

java -jar Spring-Bootdemo-0.0.1-SNAPSHOT.jar --server.port=8080

  1. 指定外部配置文件路径

java -jar Spring-Bootdemo-0.0.1-SNAPSHOT.jar --spring.config.location=D:\application.properties

  1. 将配置文件放在jar包同级目录下,执行时会自动获取配置文件

全部评论

相关推荐

头像 会员标识 头像
06-04 23:22
已编辑
西安工业大学 C++
点赞 评论 收藏
分享
头像 会员标识 头像
06-05 00:48
已编辑
西安工业大学 C++
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务