Spring boot 配置文件

一,springboot配置文件是什么

springboot定义了配置文件的格式,也规范了其他框架集成到spingboot的目的。

很多项目的配置信息也放在这里,就比如:

项目的启动端口(就比如8080,如果被占用,就可以在这里修改端口号。)

数据库的连接信息

第三方的调用密钥

一些普通日志或者异常日志

其实在spring boot创建项目的时候,就自动创建了配置文件。就是这个

二,配置文件的格式

总共有三种:

application.properties

application.yml

application.yaml

第一种就是上面的 ,yml是yaml简写,这边就只说yml就行了。

两个是理论可以共存在一个项目,如果两个有冲突,则以.properties为主,也就是这个优先级更高。但一般开发是不会的,可以降低故障率。

三,properties配置文件说明

3.1基本用法

以键值对的方式配置,key和value是以=连接的,如:

java 复制代码
# 配置项⽬端⼝号 
server.port=8080
#配置数据库连接信息 
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/testdb?characterEncoding=utf8&
spring.datasource.username=root
spring.datasource.password=root

3.2properties缺点分析

从上面的代码中可以看出,这个有很多的冗余,就比如这一块

这个缺点在这里无法避免,只能通过yml来实现。

四,yml配置文件说明

yml是YAML是缩写,它的全称Yet Another Markup Language翻译成中⽂就是"另⼀种标记语⾔。

4.1基本用法

yml是树形结构的配置文件,基础语法为key:value。要记住,空格不能省略。

也能看出来配置正确的时候key是亮起来的。

4.1.1使用yml连接数据库

java 复制代码
spring:
  datasource:
     url: jdbc:mysql://127.0.0.0:3306/dbname?characterEncoding=utf8&useSSL=false
     username: root
     password: root

也能看出来没有上面的冗余现象了,也简便了很多。

4.2yml使用进阶

yml配置不同数据及null

java 复制代码
# 字符串 
string.value: Hello
# 布尔值,true或false 
boolean.value: true
boolean.value1: false
# 整数 
int.value: 10
# 浮点数 
float.value: 3.14159
# Null,~代表null 
null.value: ~
# "" 空字符串 
#, 直接后⾯什么都不加就可以了, 但这种⽅式不直观, 更多的表⽰是使⽤引号括起来 
empty.value: ''

4.3yml优缺点

优:可读性高,写法简单,易于理解,支持多种数据类型和编程语言

缺:不适合写复杂文件 ,对格式要求很严格(一个空格就要老命)。

五,总结

properties使用key=value的形式配置键类型的配置文件,而yml使用的是树形结构来配置

yml层级之间使⽤换⾏缩进的⽅式配置,key和value,之间使⽤": "(英⽂冒号)加空格的⽅式设置,并且空格不可省略。

properties是早期默认的配置文件格式,其配置存在一定的冗余,使用yml可以很好解决这些问题。

yml和properties可以共存,但建议只使用一种,可以降低故障率。

相关推荐
bearpping1 分钟前
Spring Boot 整合 MyBatis 与 PostgreSQL 实战指南
spring boot·postgresql·mybatis
mygljx4 分钟前
Spring Boot从0到1 -day02
java·spring boot·后端
程序员小郭836 分钟前
Spring Ai 04 解决 ChatClient 初始化冲突问题
java·后端·spring
y = xⁿ8 分钟前
【LeetCodehot100】T114:二叉树展开为链表 T105:从前序与中序遍历构造二叉树
java·算法·链表
SuniaWang10 分钟前
《Spring AI + 大模型全栈实战》学习手册系列 · 专题八:《RAG 系统安全与权限管理:企业级数据保护方案》
java·前端·人工智能·spring boot·后端·spring·架构
xiaohe0736 分钟前
Maven Spring框架依赖包
java·spring·maven
不吃香菜学java1 小时前
苍穹外卖-菜品分页查询
数据库·spring boot·tomcat·log4j·maven·mybatis
hssfscv1 小时前
软件设计师下午题二 E-R图
java·笔记·学习
cyforkk1 小时前
Spring Boot 3 集成 Swagger 踩坑实录:解决 doc.html 404 与 Unauthorized 拦截
spring boot·后端·html
十七号程序猿1 小时前
Java图书管理系统 | 无需配置任何环境,双击一键启动,开箱即用
java·spring boot·vue·毕业设计·毕设·源代码管理