SpringBoot中的YAML配置文件和日志

与其明天开始,不如现在行动!


YAML配置文件

SpringBoot集中化管理配置:application.properties

问题:配置多了以后难阅读和修i该,层级结构办事都不高

YAML

  • 设计目标,方便读写
  • 层次分明,更适合做配置文件
  • 使用.yaml.yml作为文件后缀

1 基本语法

  1. 大小写敏感
  2. 使用缩进标识层级关系,K: V,使用空格分隔K,V
  3. 缩进时不允许使用Tab键,只允许使用空格
  4. 所进的空格数目不中哟啊,只要相同层级的元素左侧对其即可
  5. #标识注释,从这个字符一直到行尾,都会被解析器忽略

支持的写法:

  1. 对象:键值对的集合
  2. 数组:一组按次序排列的值
  3. 纯量:单个的、不可再分的值

2 语法细节

  1. userCenter可以写为user-cneter
  2. 文本:
    1. 单引号不会转义
    2. 双引号会转义
  3. 大文本
    1. |:开头,大文本在下层,保留文本格式,换行符正确显示
    2. >:开头,大文本在下层,折叠换行符
  4. 多文档合并
    • 使用---可以把多个eyaml文档合并在一个文档中,每个文档区依然认为内容独立

日志

规范:项目开发不要编写System.out.println(),应该用日志记录信息

image-20231207164406771

1 简介

  1. Spring使用commons-logging作为内部日志,但底层日志实现是开放的,可对接其它日志框架。

    Spring5及以后commons-logging被Spring整合了

  2. SpringBoot默认日志是logback+slf4j

  3. 日志是系统以启动就要用的,是用监听器机制配置好的

2 格式

2023-12-07T17:01:33.627+08:00 INFO 19996 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable

默认输出格式:

  1. 时间和日期,毫秒级精度
  2. 日志级别:ERRORWARNINFODEBUGTRACE
  3. 进程ID
  4. —:消息分隔符
  5. 线程名:使用[ ]包含
  6. Logger名,通常是产生日志的类名
  7. 消息,日志记录的内容

logback没有FATAL级别,对应的是ERROR

3 级别

由高到低:OFFFALSEERRORWARNINFODEBUGTRACEALL

  1. 不指定级别的所有类,都使用root指定的级别作为默认级别
  2. SpringBoot日志默认级别是INFO
  3. 可以在配置文件中调整日志级别,可以具体到包

4 日志保存

#指定日志文件的路径,日志文件默认名spring.log
#logging.file.path=
#指定日志文件的名,可以写路径+名字
logging.file.name=demo.log

💎总结

本文中若是有出现的错误请在评论区或者私信指出,我再进行改正优化,如果文章对你有所帮助,请给博主一个宝贵的三连,感谢大家😘!!!


### 回答1: Spring Boot的application.yaml文件通常包含应用程序的配置信息,例如数据库连接信息、端口号、日志级别等。以下是一个示例的application.yaml文件,其包含了一些常见的配置项: ``` server: port: 8080 servlet: context-path: /api spring: datasource: url: jdbc:mysql://localhost:3306/mydb username: root password: mypassword driver-class-name: com.mysql.jdbc.Driver jpa: hibernate: ddl-auto: update show-sql: true logging: level: org: springframework: web: DEBUG ``` 在这个示例配置了服务器端口号为8080,Servlet上下文路径为/api。数据源配置指定了MySQL数据库连接的URL、用户名、密码和驱动程序类名。JPA配置指定了Hibernate的DDL自动更新策略和是否显示SQL语句。日志级别设置为DEBUG,以便调试应用程序。 请注意,YAML文件使用缩进来表示嵌套关系,例如server和servlet都是属于同一个父级节点的。另外,冒号和空格是YAML文件的重要标记,它们用于分隔键值对。 ### 回答2: 在Spring BootYAML文件是一种常见的配置文件格式,用于配置应用程序的各种属性和特性。YAML文件包含的内容可以分为以下几个方面: 1. 服务器端口配置:可以通过YAML文件配置应用程序监听的服务器端口号。例如,可以通过`server.port`属性设置应用程序监听的端口号。 2. 数据库配置YAML文件可以配置应用程序连接的数据库信息,如数据库的URL、用户名、密码等。通过配置`spring.datasource`属性,可以指定应用程序所使用的数据库。 3. 日志配置YAML文件可以配置应用程序的日志输出方式和级别。例如,可以通过配置`logging.level`属性来设置日志的输出级别,以及通过`logging.file`属性来指定日志的输出文件。 4. 应用程序属性配置YAML文件可以配置应用程序的各种属性和特性。例如,可以通过配置`spring.application.name`属性来设置应用程序的名称,以及通过`spring.profiles.active`属性来指定应用程序的运行环境。 5. 缓存配置YAML文件可以配置应用程序的缓存配置信息。例如,可以通过配置`spring.cache`属性来指定应用程序所使用的缓存类型和参数。 6. 安全配置YAML文件可以配置应用程序的安全认证信息。例如,可以通过配置`spring.security`属性来指定应用程序使用的安全认证方式和权限配置。 总之,YAML文件是Spring Boot常用的配置文件格式,可以通过它来配置应用程序的各种属性和特性,包括服务器端口、数据库连接、日志输出、应用程序属性、缓存配置和安全认证等。通过适当配置YAML文件,可以方便地对应用程序进行配置和管理。 ### 回答3: Spring Bootyaml文件是用来配置应用程序的。它包含了许多重要的参数和属性,用来定义应用程序的行为和特性。下面是yaml文件可能包含的一些内容: 1. 服务器端口:可以在yaml文件指定应用程序要监听的端口号。默认情况下,Spring Boot将使用8080端口。 2. 数据库配置:可以通过yaml文件来定义应用程序所使用的数据库连接信息,包括数据库的URL、用户名、密码等。可以根据需要配置多个数据库。 3. 日志配置:可以通过yaml文件来配置应用程序的日志输出方式和级别。可以指定日志的文件路径、输出格式和日志的级别等信息。 4. 线程池配置:可以通过yaml文件来配置应用程序的线程池使用方式和参数,包括线程池的大小、最大等待时间等。 5. 缓存配置:可以通过yaml文件来配置应用程序的缓存使用方式和参数,包括缓存的类型、最大缓存大小等。 6. Spring框架特性配置:可以通过yaml文件来配置Spring框架的各种特性,例如自动扫描包、自动注入Bean等。 7. 第三方服务配置:可以通过yaml文件来配置应用程序所使用的第三方服务,例如消息队列、文件存储、邮件发送等。 总之,yaml文件是用来配置Spring Boot应用程序的重要文件,它包含了许多关键的配置参数,可以根据应用程序的需求进行修改和调整。使用yaml文件可以方便地管理和配置应用程序的各种功能和特性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员@wen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值