欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Spring Boot的日志框架使用

冬至子 ? 來源:瑞煕share ? 作者:brevity wit ? 2023-06-02 10:59 ? 次閱讀

日志框架

目前市面上常見的日志框架有:slf4j(Simple Logging Facade for Java)、logback、log4j、log4j2、commons-logging(Spring默認日志框架)、JUL(java.util.logging)等。

日志框架包括日志的抽象與日志的實現(xiàn)兩部分,其中日志的抽象推薦使用slf4j,而日志的實現(xiàn)推薦使用logback。Spring Boot的日志框架默認選擇的就是這兩個。

SLF4J的使用

系統(tǒng)開發(fā)在使用日志的時候,不應(yīng)該使用日志的實現(xiàn),而應(yīng)該使用日志的抽象,但是日志的配置文件還是要使用日志實現(xiàn)框架本身的配置文件,日志使用示例代碼如下:

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class HelloWorld {
  public static void main(String[] args) {
    Logger logger = LoggerFactory.getLogger(HelloWorld.class);
    logger.info("Hello World!");
  }
}

slf4j的調(diào)用結(jié)構(gòu)如下:

圖片

日志統(tǒng)一問題

當(dāng)一個項目集成了多個框架,而這些框架大部分都集成了日志框架,就會出現(xiàn)一個項目底層使用多種日志框架的問題,slf4j給出了這個問題的解決辦法,如下圖所示:

圖片

日志框架統(tǒng)一為slf4j的步驟:①排除其他框架集成的日志框架;②用中間包來替換原來的日志框架;③導(dǎo)入slf4j框架的其他實現(xiàn)。

Spring Boot的日志

Spring Boot Starter的maven依賴:
< dependency >
     < groupId >org.springframework.boot< /groupId >
     < artifactId >spring-boot-starter< /artifactId >
     < version >2.7.7< /version >
     < scope >compile< /scope >
 < /dependency >

Spring Boot底層的日志依賴關(guān)系圖:

圖片

Spring Boot使用的日志依賴:

< dependency >
      < groupId >org.springframework.boot< /groupId >
      < artifactId >spring-boot-starter-logging< /artifactId >
      < version >2.7.7< /version >
      < scope >compile< /scope >
  < /dependency >

由上圖可以看出,Spring Boot自動適配了所有的日志,而且底層默認使用了slf4j+logback記錄日志,引入其他框架的時候,只需要把這個框架依賴的日志框架移除即可。

Spring Boot默認日志框架示例代碼如下:

package com.brevity;


 import org.junit.jupiter.api.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.boot.test.context.SpringBootTest;


 @SpringBootTest
 class LoggingApplicationTests {


     // 獲取日志記錄器,參數(shù)建議使用當(dāng)前類
     Logger logger = LoggerFactory.getLogger(LoggingApplicationTests.class);


      @Test
      void logTest() {
          // Spring Boot默認使用的是info級別的日志
          logger.trace("跟蹤日志");
          logger.debug("debug日志");
          logger.info("info日志");
          logger.warn("warn日志");
          logger.error("error日志");
      }


 }

修改默認的日志級別只需要在配置文件中修改即可,例如在application.properties文件中添加如下代碼:

# 調(diào)整日志級別
  logging.level.com.brevity=trace
  # 修改控制臺輸出的日志格式
  # %d表示日期時間,%thread表示線程名,%-5level:級別從左顯示5個字符寬度
  # %logger{50} 表示logger名字最長50個字符,否則按照句號分割,%msg:日志消息,%n是換行符
  logging.pattern.console=%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Boot
    +關(guān)注

    關(guān)注

    0

    文章

    150

    瀏覽量

    35949
收藏 人收藏

    評論

    相關(guān)推薦

    Spring框架的設(shè)計理念

    Spring作為現(xiàn)在最優(yōu)秀的框架之一,已被廣泛的使用,51CTO也曾經(jīng)針對Spring框架中的hqC應(yīng)用做過報道。本文將從另外一個視角試圖剖析出Sp
    發(fā)表于 07-15 08:17

    啟動Spring Boot項目應(yīng)用的三種方法

    首先大家了解什么是Spring BootSpring Boot是由Pivotal團隊提供的全新框架,其設(shè)計目的是用來簡化新
    發(fā)表于 01-14 17:33

    Spring Boot嵌入式Web容器原理是什么

    ,不需要配置任何特殊的XML配置,為了這個目標,Spring BootSpring 4.0框架之上提供了很多特性,幫助應(yīng)用以“約定優(yōu)于配置”“開箱即用”的方式來啟動應(yīng)用并運行上下文。
    發(fā)表于 12-16 07:57

    java 日志框架Spring Boot分析

    引言:我們需要在已有的微服務(wù)代碼中添加日志功能,用于輸出需要關(guān)注的內(nèi)容,這是最平常的技術(shù)需求了。由于我們的微服務(wù)代碼是基于SpringBoot開發(fā)的,那么問題就轉(zhuǎn)換為如何在Spring Boot
    發(fā)表于 09-28 14:58 ?0次下載

    Spring Boot框架錯誤處理

    /spring-boot-rest-api-error-handling》Guide to Spring Boot REST API Error Handling《/a》 《br》 《strong》作者《/strong》:BRU
    發(fā)表于 09-28 15:31 ?0次下載

    spring mvc框架介紹

    Spring MVC屬于SpringFrameWork的后續(xù)產(chǎn)品,已經(jīng)融合在Spring Web Flow里面。Spring 框架提供了構(gòu)建 Web 應(yīng)用程序的全功能 MVC 模塊
    發(fā)表于 11-17 16:28 ?2376次閱讀
    <b class='flag-5'>spring</b> mvc<b class='flag-5'>框架</b>介紹

    Spring Boot定時任務(wù)的重寫方法

    Spring Boot應(yīng)該是目前最火的java開源框架了,它簡化了我們創(chuàng)建一個web服務(wù)的過程,讓我們可以在很短時間、基本零配置就可以啟動一個web服務(wù)。
    的頭像 發(fā)表于 01-20 17:38 ?2485次閱讀

    Spring Boot從零入門1 詳述

    在開始學(xué)習(xí)Spring Boot之前,我之前從未接觸過Spring相關(guān)的項目,Java基礎(chǔ)還是幾年前自學(xué)的,現(xiàn)在估計也忘得差不多了吧,寫Spring
    的頭像 發(fā)表于 12-10 22:18 ?675次閱讀

    Spring Boot特有的實踐

    Spring Boot是最流行的用于開發(fā)微服務(wù)的Java框架。在本文中,我將與你分享自2016年以來我在專業(yè)開發(fā)中使用Spring Boot
    的頭像 發(fā)表于 09-29 10:24 ?961次閱讀

    Spring Boot Web相關(guān)的基礎(chǔ)知識

    上一篇文章我們已經(jīng)學(xué)會了如何通過IDEA快速建立一個Spring Boot項目,還介紹了Spring Boot項目的結(jié)構(gòu),介紹了項目配置文件pom.xml的組成部分,并且撰寫了我們
    的頭像 發(fā)表于 03-17 15:03 ?697次閱讀

    Spring Boot Actuator快速入門

    使用的框架基本上都要升級到 2.x了吧。 什么是 Actuator ? 從本質(zhì)上講, Spring Boot Actuator 為我們的應(yīng)用程序帶來了生產(chǎn)就緒的功能。監(jiān)控我們的應(yīng)用程序,收集指標,了解流量,或者是
    的頭像 發(fā)表于 10-09 17:11 ?676次閱讀

    Spring Boot啟動 Eureka流程

    在上篇中已經(jīng)說過了 Eureka-Server 本質(zhì)上是一個 web 應(yīng)用的項目,今天就來看看 Spring Boot 是怎么啟動 Eureka 的。 Spring Boot 啟動 E
    的頭像 發(fā)表于 10-10 11:40 ?936次閱讀
    <b class='flag-5'>Spring</b> <b class='flag-5'>Boot</b>啟動 Eureka流程

    Spring Boot的啟動原理

    可能很多初學(xué)者會比較困惑,Spring Boot 是如何做到將應(yīng)用代碼和所有的依賴打包成一個獨立的 Jar 包,因為傳統(tǒng)的 Java 項目打包成 Jar 包之后,需要通過 -classpath 屬性
    的頭像 發(fā)表于 10-13 11:44 ?696次閱讀
    <b class='flag-5'>Spring</b> <b class='flag-5'>Boot</b>的啟動原理

    Spring Boot 的設(shè)計目標

    什么是Spring Boot Spring BootSpring 開源組織下的一個子項目,也是 S
    的頭像 發(fā)表于 10-13 14:56 ?619次閱讀
    <b class='flag-5'>Spring</b> <b class='flag-5'>Boot</b> 的設(shè)計目標

    Spring Cloud Gateway網(wǎng)關(guān)框架

    Spring Cloud Gateway網(wǎng)關(guān)框架 本軟件微服務(wù)架構(gòu)中采用Spring Cloud Gateway網(wǎng)關(guān)控制框架Spring
    的頭像 發(fā)表于 08-22 09:58 ?545次閱讀
    <b class='flag-5'>Spring</b> Cloud Gateway網(wǎng)關(guān)<b class='flag-5'>框架</b>