Spring Boot配置文件及日志信息

这篇具有很好参考价值的文章主要介绍了Spring Boot配置文件及日志信息。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

前言:

Spring Boot优点

配置文件

配置文件格式

读取配置文件

properties配置文件格式

properties优缺点分析

yml配置文件格式(另一种标记语言)

yml优缺点分析

Spring Boot 不同平台配置文件规则

日志信息

日志的功能

Spring Boot内置日志框架

使用日志

得到日志对象

打印日志

日志格式说明

日志级别

配置文件设置日志级别

日志持久化

小结:


前言:

    使用Spring Boot框架就是为了更加简单快速的使用Spring容器。Spring Boot就是Spring的脚手架,底层就是Spring容器。

Spring Boot优点

    1)快速集成框架:快速添加外部jar包。

    2)内置web框架:可以直接运行。

    3)快速部署:不依赖任何web容器。

    4)抛弃繁琐的xml格式的配置文件。

    5)支持更多的监控指标:可以更加容易且直观观察到项目运行情况。

配置文件

    Spring Boot默认配置文件为properties格式的文件。我们可以添加yml(yaml)格式的配置文件。两种配置文件写法差异很大。

    properties是key - value的形式,而yml类似于json的格式。两种配置文件是不同时代的产物,各有千秋。

配置文件格式

    1)properties

    2)yml(yaml)

注意:

    1)两种配置文件从功能上来讲是可以同时存在的,但企业会规定使用某一种配置文件(规范)。

    2)如果同一个项目出现两种配置文件的话,那么以properties为主(毕竟是Spring Boot默认格式)。

读取配置文件

    1)不论是properties,还是yml格式的配置文件都使用@Value("${key}")注解。它会找到配置文件中对应的key的value值,赋值到当前属性中。

    2)yml格式读对象:@ConfigurationProperties("对象名")前提需要一个类,属性包含yml中对象属性,提供set方法,让spring操作(当然也需要托管到spring中)。Spring Boot就可以通过set方法将配置文件中的属性设置到当前类中。

yml配置文件

Spring Boot配置文件及日志信息

Java代码中的实体类

Spring Boot配置文件及日志信息

properties配置文件格式

key=value

配置项分类:

    1)系统配置项,比如servler.port/spring.datasource.url...。

 可查看更多的系统配置项。

Common Application Propertieshttps://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html

    2)用户自定义配置(key用户自定义)。

properties优缺点分析

优点:

    1)系统默认的配置文件。

    2)properties优先级比yml高。

    3)格式简单,不容易出错。

缺点:

    写法比较冗余(有等级之分,可能前面等级一致,那么不同的配置项就需要写多次前面部分的配置项)。

yml配置文件格式(另一种标记语言)

key: value

注意:

    冒号后面有个空格,书写时需要严格按照这样的格式。Spring Boot会按照这样的格式去解析配置文件。

    同样存在。系统配置项和用户自定义项。

yml优缺点分析

    1)yml 是⼀个可读性高,写法简单、易于理解,它的语法和 JSON 语言类似。

    2)yml 支持更多的数据类型,它可以简单表达清楚(数组)、散列表,标量等数据形态。它使用空白符号缩进和⼤量依赖外观的特色,特别适合⽤来表达或编辑数据结构、各种配置⽂件等。

    3)yml 支持更多的编程语言,它不止是 Java 中可以使用在 Golang、PHP、Python、Ruby、JavaScript、Perl 中。

Spring Boot 不同平台配置文件规则

    开发,测试和生产环境使用的都是不同的数据库,不同的端口号等等。那么我们在不同的环境下就需要使用不同的配置文件。

    1)必须有主配置文件,主配置文件名必须是application.yml(.properties)。存放的是所有配置文件的共性,并且需要选择具体使用哪一个其他的配置文件。

    2)不同平台的配置文件,每个平台拥有一个配置文件,配置文件名必须是application-xxx.yml(.properties)

主配置文件中选择具体哪一个平台的配置文件

spring:
  profiles:
    active: test

Spring Boot配置文件及日志信息

日志信息

日志的功能

    1)发现和定位问题。

    2)记录用户登录日志,可以分析用户状态。

    3)记录操作系统日志,方便数据恢复和定位操作人。

    4)记录程序执行时间,为以后程序优化提供支持。

Spring Boot内置日志框架

Spring Boot配置文件及日志信息

    通过SLF4J来选择具体使用的日志框架,那么后续系统需要更换日志框架,直接更换就可以。SLF4J可以匹配相应的日志框架,使系统的依赖性降低,利于系统更新和维护。

使用日志

得到日志对象

    1)每一个类对应一个日志对象。可以通过LoggerFactory工厂模式获取日志对象。

private static final Logger log = LoggerFactory.getLogger(TestController.class);

    2)使用Lombok插件为我们提供的@Slf4j注解,会为当前类提供一个log对象,直接使用就可以。Lombok在编译前会把注解替换成对应的代码,直接进行编译。

打印日志

public String hello() {
        // 打印日志
        // 默认日志级别是info 只有大于等于info级别才会显示
        log.trace("trace");
        log.debug("debug");
        log.info("info");
        log.warn("warn");
        log.error("error");
        
        return "hello world";
    }

    不同的方法名代表不同的日志级别,日志默认级别是info,只有大于等于info级别才会显示到控制台中。

    配置文件中控制日志级别可以在不同环境打印不同级别的日志(不同的环境所关注的日志信息会有所差异)。

日志格式说明

Spring Boot配置文件及日志信息 

日志级别

Spring Boot配置文件及日志信息

    1)trace:微量,少许的意思,级别最低。

    2)debug:需要调试时候的关键信息打印。

    3)info:普通的打印信息(默认日志级别)。

    4)warn:警告,不影使用,但需要注意。

    5)error:错误信息,级别较高的错误日志信息。

    6)fatal:致命的,因为代码异常导致程序退出的事件(操作系统负责调度)。

配置文件设置日志级别

    为什么要设置日志级别,因为在不同环境中,需要关注的日志信息不同。比如开发环境就需要特别关注debug级别的日志信息,而生产环境就不需要关注。

    配置日志级别我们就可以只关注我们想看的日志信息。

logging:
  level:
    root: error
    com:
      example:
        demo:
          controller: error
          service: warn

    root设置的是全局日志级别,项目中所有日志级别都是error。和root同级下可设置具体类的日志级别。这里就是com.example.demo.controller和com.example.demo.service类,级别分别为error和warn。

日志持久化

    生产环境日志不可能都打印到控制台中,需要将其保存到文件中,方便相关人员去查看日志。

只需要在配置文件中配置日志保存的绝对路径即可,Spring Boot会将日志写入对应文件中。

logging:
  file:
    name: E:\javaCode\log\log_all.log

    name 可以具体设置日志保存文件名;path 默认文件名为spring.log。日志是追加写的,日志一旦产生就会永久保存。

    Spring Boot默认日志文件大小为 10MB 超过10MB就会创建新的日志文件。

小结:

    熟练使用配置文件和日志信息的控制可以很大程度帮助我们开发系统。文章来源地址https://www.toymoban.com/news/detail-428964.html

到了这里,关于Spring Boot配置文件及日志信息的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Spring Boot】Spring Boot的系统配置 — 日志配置

    日志对于系统监控、故障定位非常重要,比如当生产系统发生问题时,完整清晰的日志记录有助于快速定位问题。接下来介绍Spring Boot对日志的支持。 Spring Boot自带spring-boot-starter-logging库实现系统日志功能,spring-boot-starter-logging组件默认使用LogBack日志记录工具。系统运行日志

    2024年02月11日
    浏览(43)
  • 【Spring Boot】了解Spring Boot 的日志文件

    目录 一、日志的作用 二、日志文件的简单使用  1、Spring Boot中的默认日志 2、自定义日志打印 三、日志级别 1、日志级别分类  2、日志级别的设置 3、日志持久化 四、基于LomBok的日志输出 1、安装Lombok插件 2、使用Lombok添加日志(@slf4j) 3、使用Lombok添加getter和setter方法(@Da

    2024年02月13日
    浏览(41)
  • Spring Boot日志文件

    目录 前言🍭 一、日志的作用🍭 1、日志真实使用案例:🍉 二、日志怎么用🍭 1、自定义日志打印🍉 Ⅰ、在程序中得到日志对象🍓  常见的日志框架说明(了解)🍒 Ⅱ、使用日志对象打印日志 🍓 2、日志的级别🍉 Ⅰ、日志级别有什么用?🍓 Ⅱ、日志级别的分类与使用

    2024年01月18日
    浏览(42)
  • Linux 更加优雅地运行 JAR 文件,并将日志文件输出到本地目录,并优雅的查看日志文件信息

    方式一:直接运行jar包,最常用的启动jar包命令,特点:当前ssh窗口被锁定,CTRL + C或关闭窗口,将打断程序运行,程序退出 方式二:代表在后台运行 ,CTRL + C后程序不会被终止,关闭SSH客户端连接,将终止程序 使用 nohup 命令将进程放入后台运行,并使用 符号使命令立即返

    2024年02月16日
    浏览(43)
  • Spring boot日志配置

    Spring Boot 底层默认使用 slf4j 和 logback 的方式记录日志。工程中依赖了 spring-boot-starter-web,它又依赖了 spring-boot-starter-logging,所以不需要再手动添加该依赖。在 Spring Boot 中,application.yml 支持部分 logback 的日志配置,但一些高级配置只能通过独立的 xml 配置文件实现,经过 Sp

    2024年02月07日
    浏览(38)
  • 【Java】Spring Boot 日志文件

    日志是程序的重要组成部分,想象一下,如果程序报错了,不让你打开控制台看日志,那么你能找到报错的原因吗。 日志对于我们来说,最主要的用途就是排除和定位问题。除了发现和定位问题之外,我们还可以通过日志实现以下功能: 记录用户登录日志,方便分析用户是

    2024年02月01日
    浏览(53)
  • 【JavaEE】Spring Boot - 日志文件

    【JavaEE】Spring Boot 开发要点总结(3) 写代码不是概率事件,bug的出现必然是有原因的,而日志的主要作用就是,排查和定位问题! 而日志的生成就是随着程序的进行和一步步生成的,不说全部过程都记录得清清楚楚,至少重要的点和环节或者一些异常情况都有记录 而通过日

    2024年02月14日
    浏览(50)
  • 【Spring Boot学习二】日志文件

    目录 🌷1、自定义输出日志 🌷 2、日志级别 2.1 日志级别分类(6种) 2.2 配置日志级别(在.yml文件中设置:) (1)设置日志整体级别 (2)分目录设置日志级别 🌷3、日志怎么持久化 3.1 设置日志文件名和路径(.yml文件下配置)  3.2 对日志分割:每隔多少M分割 🌷4、更简单的

    2024年02月16日
    浏览(49)
  • 如何在 Spring Boot 中配置日志记录?

    在Spring Boot中配置日志记录是一项关键任务,因为良好的日志记录是应用程序开发和维护的必要组成部分。Spring Boot采用了一种灵活且强大的方式来管理日志,允许开发人员使用不同的日志框架,并提供了易于配置的选项。下面详细介绍在Spring Boot中配置日志记录的过程,包括

    2024年01月25日
    浏览(52)
  • Spring Boot 如何配置日志级别和输出格式

    在开发一个应用程序时,日志记录是非常重要的一环。Spring Boot 提供了多种日志输出方式和配置选项,本文将介绍如何在 Spring Boot 应用程序中配置日志级别和输出格式。 在 Spring Boot 应用程序中,我们可以通过修改配置文件或者编程方式来配置日志级别。在下面的示例中,我

    2024年02月14日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包