| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> SpringBoot配置文件、多配置、激活 -> 正文阅读 |
|
[Java知识库]SpringBoot配置文件、多配置、激活 |
目录 1、配置文件分类
????????SpringBoot是基于约定的,所以很多配置都有默认值,但如果想使用自己的配置替换默认约定的话,就可以使用 application.properties或者application.yml(application.yaml)进行配置,配置文件路径为src/main/resources下,application是配置文件默认名称。
2、配置文件语法格式application.properties(无需讲解,传统常用的)
application.yml、application.yaml
?
YAML语法:
1.大小写敏感
2.数据值前边必须有空格,作为分隔符
3.
使用缩进表示层级关系
4.
缩进时不允许用Tab键,只许使用空格(各系统Tab对应的空格数目可能不同,导致层次混乱)
5.
缩进的空格数目不重要,只要相同层级的元素左侧对齐即可
6.
# 表示注释,从这个字符一直到行尾,都会被解析器忽略
? ? ?? ????????相比较properties配置语法,YAML是一种更容易被人类阅读,并且容易和脚本语言交互,可以被支持YAML库的不同的编程语言程序导入,比如: C/C++, Ruby, Python, Java, Perl, C#, PHP等。YML文件是以数据为核心的,比传统的xml方式更加简洁,YAML文件的扩展名可以使用.yml或者.yaml。 3、配置文件优先级
在同一级目录下优先级为:properties > yml > yaml
不同文件配置了相同的属性,则高优先级的配置会覆盖低优先级的配置,不同的配置属性会各自被加载。
4、读取配置文件的方式1.@Value小范围取值的话,直接在需要的地方使用该注解即可,简单方便,语法如下:
2) Environment项目启动时,配置文件中的数据会封装到org.springframework.core.env.Environment类中,在需要中的地方注入该对象,调用该类继承的org.springframework.core.env.PropertyResolver接口中的 String getProperty(String var1)方法获取值。
3) @ConfigurationProperties使用配置处理器,解析配置文件,将配置封装到POJO实体类中,依赖和实体示例如下:
5、Profile多文件配置
????????开发Spring Boot应用时,通常同一套程序会被安装到不同环境,比如:开发、测试、生产等。其中数据库地址、服务器端口等配置都不同,如果每次打包时,都要修改配置文件,那么非常麻烦,profile功能就是来进行动态配置切换的。
1.profile多文件配置方式1.多profile文件方式
提供多个配置文件,每个代表一种环境。
?
application-dev.properties/yml 开发环境
?
application-test.properties/yml 测试环境
?
application-prd.properties/yml 生产环境
2.yml多文档方式
在yml中使用 --- 分隔不同区域配置(当前语法是SpringBoot2.5.4版本,其他版本不一样):
1.profile激活方式1.配置文件
2.外部参数(虚拟机参数)Idea示例,在启动配置中,修改虚拟机参数,指定读取配置文件:
3.外部参数(命令行参数)?1.Idea示例,在启动配置中,输入命令行,指定读取配置文件:
?2.cmd运行示例 双击package进行打包,?打包完成后,找到控制台提醒的包存放路径: ?在当前目录按住shift键+鼠标右键,打开PowerShell命令窗口,输入如下命令:
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 12:51:21- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |