欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

springboot使用logback自定義日志的詳細(xì)過程

 更新時間:2024年12月16日 11:09:51   作者:北海597  
這篇文章主要介紹了springboot使用logback自定義日志的詳細(xì)過程,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧

前言

1、末尾有完整配置文件

2、日志分為五個等級,按照優(yōu)先級的高低可以分為:

TRANCE < DEBUG < INFO < WARN < ERROR

springboot默認(rèn)是INFO,因此低于INFOTRACEDEBUG都不會輸出。

可以在propertiesyaml配置文件中修改日志級別:

logging:
  level:
    root: debug

這里的root可以換成包名,精細(xì)控制不同包的日志輸出級別,比如:

logging:
  level:
    com.example.controller: debug
    com.example.mapper: error

3、其次,logback的日志分為控制臺日志和文件日志。

控制臺日志:也就是我們IDE運(yùn)行項目時,控制臺打印的信息。

文件日志:項目運(yùn)行時,將運(yùn)行信息寫入到指定文件。需要在springboot配置文件或logback配置文件中指定日志文件的位置。

引入依賴

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-logging</artifactId>
</dependency>

解釋:按理來講需要引入的是spring-boot-starter-logging依賴,但是spring-boot-starter-web間接依賴于spring-boot-starter-logging,所以我們只需要引入spring-boot-starter-web即可。

使用logback

logback會自動尋找classpath根部下面的logback.xml,所以我們只需要在resource目錄下創(chuàng)建logback.xml文件,就可以在程序啟動時,自動加載自定義日志的配置文件。

如果不想叫logback.xml,想起一個有個性的名字,比如cxkLogback.xml,那么需要在propertiesyaml配置文件指定logback文件路徑:

logging:
  config: classpath:cxkLogback.xml

如果想驗證一下,可以將下方概覽中的配置文件復(fù)制到自己的項目中運(yùn)行一下,觀察控制臺的日志輸出格式。

配置文件概覽

可以簡單先看一個配置文件的案例

<?xml version="1.0" encoding="UTF-8"?>
<!--
    scan:當(dāng)配置文件修改后,將會重新載入。
    scanPeriod:設(shè)置檢測配置文件是否有修改的時間間隔,如果沒有給出時間單位,默認(rèn)單位是毫秒。當(dāng)scan為true時,此屬性生效。
    debug:為true時,將打印出logback內(nèi)部日志信息,實(shí)時查看logback運(yùn)行狀態(tài)。默認(rèn)值為false。
-->
<configuration scan="true" scanPeriod="60 seconds" debug="false">
    <!-- 定義一個名為STDOUT的控制臺輸出Appender -->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
        	<!-- 輸出格式 -->
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
    <!-- 定義一個名為FILE的文件輸出Appender -->
    <appender name="FILE" class="ch.qos.logback.core.FileAppender">
        <!-- 設(shè)置日志文件的存放路徑和文件名,可根據(jù)實(shí)際情況修改 -->
        <file>logs/app.log</file>
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
    <!-- 配置根日志記錄器,設(shè)置日志級別為DEBUG,并將日志輸出到STDOUT和FILE這兩個Appender -->
    <root level="info">
        <appender-ref ref="STDOUT" />
        <appender-ref ref="FILE" />
    </root>
</configuration>

這個文件主要定義了兩個Appender,分別輸出日志到控制臺和文件中。

其次定義root目錄的日志級別,并將兩個Appender配置到root目錄下,進(jìn)行日志輸出。

這里的root標(biāo)簽里面定義了level,有沒有感覺在哪里見過這個東西?

沒錯,上文講到,我們可以在propertiesyaml配置文件中修改日志級別,在springboot配置文件中的操作,和這里的操作是等價的。那么按照同樣的道理,這里的root也可以細(xì)化成不同的包,配置不同的levelAppender。這里只是引出這個概念,具體的內(nèi)容放在下文。

配置項詳解

<configuration>:logback配置的根標(biāo)簽。它包含三個屬性:scan、scanPeriod、debug。

  • scan:當(dāng)配置文件修改后,將會重新載入。值為truefalse
  • scanPeriod:時間間隔。每隔一段時間檢測一次配置文件是否被修改。值可以是6012 second,數(shù)字是自定義的,不是非要填6012,如果沒有給出時間單位,默認(rèn)單位是毫秒。當(dāng)scantrue時,此屬性生效。
  • debug:是否打印logback內(nèi)部日志信息,實(shí)時查看logback運(yùn)行狀態(tài)。值為truefalse(默認(rèn))。

<Appender>:可以理解成負(fù)責(zé)寫日志的工具人。一個Appender就是一個工具人。

<logger> :設(shè)置某一個包或具體的類的日志打印級別,以及指定的Appender(分配打工人)。

<root>:根logger,也是logger的一種,且只有一個level屬性。

contextName:每個logger都關(guān)聯(lián)到logger上下文,默認(rèn)上下文名稱為default。但可以使用contextName標(biāo)簽設(shè)置成其他名字,用于區(qū)分不同應(yīng)用程序的記錄。

property:用來定義變量值的標(biāo)簽,property標(biāo)簽有兩個屬性,namevalue;其中name的值是變量的名稱,value的值時變量定義的值。通過property定義的值會被插入到logger上下文中。定義變量后,可以使“${name}”來使用變量。

Appender的種類:

  • ConsoleAppender:控制臺日志。
  • FileAppender:文件日志。
  • RollingFileAppender:滾動文件日志。會在日志文件達(dá)到某種條件后,創(chuàng)建新的日志文件繼續(xù)寫入日志。常見的條件是文件的大小,比如設(shè)置每個文件大小為2KB時,創(chuàng)建新的文件繼續(xù)寫入,文件名大致為xxx1.log,xxx2.log。

輸出格式詳解

舉個例子:%level | %d{yyyy-MM-dd HH:mm:ss,Asia/Shanghai} | [%thread] | %-4relative | %logger{40}| -- %msg%n

%level:日志級別。

%d{yyyy-MM-dd HH:mm:ss,Asia/Shanghai}:時間。

[%thread]:當(dāng)前線程。

%-4relative:從程序啟動到當(dāng)前日志記錄事件所經(jīng)過的相對時間。-表示左對齊,4表示4個字符寬度。

%logger{40}:輸出日志記錄器名稱的占位符,其中40是一個可選的參數(shù),用于指定輸出的日志記錄器名稱的最大長度。如果不指定{40}這樣的參數(shù),默認(rèn)會輸出完整的日志記錄器名稱。

%msg:日志消息主體。

%n:換行。

%file:文件名。

%line:行號。

配置文件示例

<?xml version="1.0" encoding="UTF-8"?>
<!--
    scan:當(dāng)配置文件修改后,將會重新載入。
    scanPeriod:設(shè)置檢測配置文件是否有修改的時間間隔,如果沒有給出時間單位,默認(rèn)單位是毫秒。當(dāng)scan為true時,此屬性生效。
    debug:為true時,將打印出logback內(nèi)部日志信息,實(shí)時查看logback運(yùn)行狀態(tài)。默認(rèn)值為false。
-->
<configuration scan="true" scanPeriod="60 seconds" debug="false">
    <!-- 日志文件路徑,如果spring配置文件沒有對應(yīng)值,使用默認(rèn)值 -->
    <springProperty scope="context" name="springFilePath" source="log.path" defaultValue="src/main/resources/log"/>
    <!-- 將日志輸出到控制臺 -->
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%level | %d{yyyy-MM-dd HH:mm:ss,Asia/Shanghai} | [%thread] | %-4relative | %logger{40}| -- %msg%n</pattern>
            <charset>UTF-8</charset>
        </encoder>
    </appender>
    <!-- 將日志輸出到文件 -->
    <!--
        使用輪轉(zhuǎn)日志:日志文件超出一定大小后,會新建一個文件(Rolling)
    -->
    <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- 設(shè)置文件路徑 -->
        <file>${springFilePath}/spring.log</file>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %thread -- %msg%n</pattern>
            <charset>utf-8</charset>
        </encoder>
        <!-- 基于時間和大小的滾動策略 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <!-- 日志文件輸出的文件名 -->
            <fileNamePattern>${springFilePath}/spring.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <!-- 單個日志文件最大體積,超出最大值,會新建一個日志文件-->
            <maxFileSize>200MB</maxFileSize>
            <!-- 日志文件保留天數(shù) -->
            <maxHistory>60</maxHistory>
            <!-- 所有日志文件的總體積限制 -->
            <totalSizeCap>20GB</totalSizeCap>
        </rollingPolicy>
    </appender>
    <!-- root節(jié)點(diǎn)時必選節(jié)點(diǎn),用來指定最基礎(chǔ)的日志輸出級別,只有一個level屬性 -->
    <root level="info">
        <appender-ref ref="console" />
        <appender-ref ref="file" />
    </root>
</configuration>

給日志配置顏色

方式一、使用官方默認(rèn)配置

只需要在xml配置文件里引入配置文件即可。

<include resource="org/springframework/boot/logging/logback/defaults.xml"/>

什么?你問我這個文件去哪里找?根據(jù)resource里面的路徑,去lib目錄的springboot依賴中找。

方式二、自定義顏色配置

使用形如%clr(){red}來給日志標(biāo)簽配置顏色。

要使用%clr,有兩種方式:

第一種是引入方式一的默認(rèn)配置文件,在該文件里面就幫我們引入了%clr。

第二種方式就是手動引入%clr,可以參考一下defaults.xml。

<conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />

%clr支持的顏色:blue、cyan、faint、green、magenta、red、yellow

faint:淡色(控制臺默認(rèn)顏色)

magenta:品紅色

這里貼一下我的pattern

%level | %clr(%d{yyyy-MM-dd HH:mm:ss,Asia/Shanghai}){magenta} | [%thread] | %-4relative | %clr(%logger{40}){magenta}| -- %msg%n

那這個時候你就會發(fā)現(xiàn)了,這樣自定義的話,我的level怎么沒有顏色啊。

不要擔(dān)心,有解決辦法的。

這里提供兩種解決辦法:

第一種可以更改一下logback中,%clr對于level的判斷,針對不同level顯示不同顏色,但是這個我還不會,所以自行探索。

第二種要用的是%highlight高亮。

使用%highlight給level配置顏色

第一步、新建一個高亮顏色配置類。

import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.pattern.color.HighlightingCompositeConverter;
import ch.qos.logback.classic.spi.ILoggingEvent;
import static ch.qos.logback.core.pattern.color.ANSIConstants.*;
import static ch.qos.logback.core.pattern.color.ANSIConstants.DEFAULT_FG;
/**
 * 自定義 %highlight,實(shí)現(xiàn)不同日志level不同顏色
 */
public class LevelHighLightColorConfig extends HighlightingCompositeConverter {
    // 這里用的版本是springboot 2.6.13
    // 如果你發(fā)現(xiàn)父類中的方法不是getForegroundColorCode,可能是版本差異造成的。
    // 那么需要你對著父類ctrl+左鍵點(diǎn)擊,看看父類是怎么實(shí)現(xiàn)的
    // 然后照貓畫虎繼續(xù)修改,核心邏輯就是判斷然后返回不同的顏色。
    // 因為作者跟著AI配置的時候就遇到這種情況,也是模仿父類進(jìn)行修改的。
    @Override
    protected String getForegroundColorCode(ILoggingEvent event) {
        Level level = event.getLevel();
        switch (level.toInt()) {
            case Level.ERROR_INT:
                return RED_FG;
            case Level.WARN_INT:
                return YELLOW_FG;
            case Level.INFO_INT:
                return GREEN_FG;
            default:
                return DEFAULT_FG;
        }
    }
}

第二步、在logback.xml配置文件中引入我們的%highlight

conversionWord的值固定為highlight,converterClass的值為我們上一步寫的配置類。

<conversionRule conversionWord="highlight"
                    converterClass="com.yexiao.userCenter.config.LevelHighLightColorConfig" />

第三步、編寫pattern

<pattern>%highlight(%level) | %clr(%d{yyyy-MM-dd HH:mm:ss,Asia/Shanghai}){magenta} | [%thread] | %-4relative | %clr(%logger{40}){magenta}| -- %msg%n</pattern>

完整配置文件

<?xml version="1.0" encoding="UTF-8"?>
<!--
    scan:當(dāng)配置文件修改后,將會重新載入。
    scanPeriod:設(shè)置檢測配置文件是否有修改的時間間隔,如果沒有給出時間單位,默認(rèn)單位是毫秒。當(dāng)scan為true時,此屬性生效。
    debug:為true時,將打印出logback內(nèi)部日志信息,實(shí)時查看logback運(yùn)行狀態(tài)。默認(rèn)值為false。
-->
<configuration scan="true" scanPeriod="60 seconds" debug="false">
    <include resource="org/springframework/boot/logging/logback/defaults.xml"/>
    <conversionRule conversionWord="highlight"
                    converterClass="com.yexiao.userCenter.config.LevelHighLightColorConfig" />
    <!-- 日志文件路徑,如果spring配置文件沒有對應(yīng)值,使用默認(rèn)值 -->
    <springProperty scope="context" name="springFilePath" source="log.path" defaultValue="src/main/resources/log"/>
    <!-- 將日志輸出到控制臺 -->
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%highlight(%level) | %clr(%d{yyyy-MM-dd HH:mm:ss,Asia/Shanghai}){magenta} | [%thread] | %-4relative | %clr(%logger{40}){magenta}| -- %msg%n</pattern>
            <charset>UTF-8</charset>
        </encoder>
    </appender>
    <!-- 將日志輸出到文件 -->
    <!--
        使用輪轉(zhuǎn)日志:日志文件超出一定大小后,會新建一個文件(Rolling)
    -->
    <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- 設(shè)置文件路徑 -->
        <file>${springFilePath}/spring.log</file>
        <!-- 基于時間和大小的滾動策略 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <!-- 日志文件輸出的文件名 -->
            <fileNamePattern>${springFilePath}/spring.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <!-- 單個日志文件最大體積,超出最大值,會新建一個日志文件-->
            <maxFileSize>200MB</maxFileSize>
            <!-- 日志文件保留天數(shù) -->
            <maxHistory>60</maxHistory>
            <!-- 所有日志文件的總體積限制 -->
            <totalSizeCap>20GB</totalSizeCap>
        </rollingPolicy>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %thread -- %msg%n</pattern>
            <charset>utf-8</charset>
        </encoder>
    </appender>
    <!-- root節(jié)點(diǎn)時必選節(jié)點(diǎn),用來指定最基礎(chǔ)的日志輸出級別,只有一個level屬性 -->
    <root level="info">
        <appender-ref ref="console" />
        <appender-ref ref="file" />
    </root>
</configuration>1

Tips 1、文件路徑配置問題

文件路徑有兩種方式配置,分別是filepath,或者在xml文件中配置。

注:file和path二者不能同時使用,如若同時使用,則只有l(wèi)ogging.file生效
logging.file=文件名
logging.path=日志文件路徑
logging.level.包名=指定包下的日志級別
logging.pattern.console=日志打印規(guī)則
  • logging.file,設(shè)置文件,可以是絕對路徑,也可以是相對路徑。如:logging.file=my.log
  • logging.path,設(shè)置目錄,會在該目錄下創(chuàng)建spring.log文件,并寫入日志內(nèi)容,如:logging.path=/var/log

注:二者不能同時使用,如若同時使用,則只有l(wèi)ogging.file生效,可以看到這種方式配置簡單,但是能實(shí)現(xiàn)的功能也非常有限,如果想要更復(fù)雜的需求,就需要下面的定制化配置了。

2、使用%clr添加顏色,啟動報錯

完整報錯如下:

Exception in thread "main" java.lang.IllegalStateException: Logback configuration error detected: 
ERROR in ch.qos.logback.core.pattern.parser.Compiler@7a362b6b - There is no conversion class registered for composite conversion word [clr]
ERROR in ch.qos.logback.core.pattern.parser.Compiler@7a362b6b - Failed to create converter for [%clr] keyword
ERROR in ch.qos.logback.core.pattern.parser.Compiler@7a362b6b - There is no conversion class registered for composite conversion word [clr]
ERROR in ch.qos.logback.core.pattern.parser.Compiler@7a362b6b - Failed to create converter for [%clr] keyword
	at org.springframework.boot.logging.logback.LogbackLoggingSystem.loadConfiguration(LogbackLoggingSystem.java:166)
	at org.springframework.boot.logging.AbstractLoggingSystem.initializeWithConventions(AbstractLoggingSystem.java:82)
	at org.springframework.boot.logging.AbstractLoggingSystem.initialize(AbstractLoggingSystem.java:60)
	at org.springframework.boot.logging.logback.LogbackLoggingSystem.initialize(LogbackLoggingSystem.java:114)
	at org.springframework.boot.context.logging.LoggingApplicationListener.initializeSystem(LoggingApplicationListener.java:264)
	at org.springframework.boot.context.logging.LoggingApplicationListener.initialize(LoggingApplicationListener.java:237)
	at org.springframework.boot.context.logging.LoggingApplicationListener.onApplicationEnvironmentPreparedEvent(LoggingApplicationListener.java:200)
	at org.springframework.boot.context.logging.LoggingApplicationListener.onApplicationEvent(LoggingApplicationListener.java:173)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:127)
	at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:74)
	at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:54)
	at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:358)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:317)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1255)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1243)
	at com.kaka.jtest.springboot.Application.main(Application.java:24)

解決辦法:

沒有引入%clr,需要引入默認(rèn)的配置文件

<include resource="org/springframework/boot/logging/logback/defaults.xml"/>

或手動引入%clr

<conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />

3、不要在日志文件里面使用顏色輸出

使用顏色輸出會將顏色轉(zhuǎn)換成ANSI碼,不會有顏色,可讀性較差。

參考鏈接

【1】SpringBoot+logback優(yōu)雅的配置日志

【2】logback官方配置文檔

到此這篇關(guān)于springboot使用logback自定義日志的文章就介紹到這了,更多相關(guān)springboot logback自定義日志內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring boot怎么整合Mybatis

    Spring boot怎么整合Mybatis

    spring boot的簡配置方便的開發(fā),下面通過本文給大家分享Spring boot整合Mybatis的方法,需要的朋友參考下
    2017-07-07
  • Java使用自定義注解實(shí)現(xiàn)為事件源綁定事件監(jiān)聽器操作示例

    Java使用自定義注解實(shí)現(xiàn)為事件源綁定事件監(jiān)聽器操作示例

    這篇文章主要介紹了Java使用自定義注解實(shí)現(xiàn)為事件源綁定事件監(jiān)聽器操作,結(jié)合實(shí)例形式分析了java自定義注解、注解處理、事件監(jiān)聽與響應(yīng)等相關(guān)操作技巧,需要的朋友可以參考下
    2019-10-10
  • Spring Boot環(huán)境屬性占位符解析及類型轉(zhuǎn)換詳解

    Spring Boot環(huán)境屬性占位符解析及類型轉(zhuǎn)換詳解

    這篇文章主要給大家介紹了關(guān)于Spring Boot環(huán)境屬性占位符解析及類型轉(zhuǎn)換的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-08-08
  • 詳解Spring?Security?捕獲?filter?層面異常返回我們自定義的內(nèi)容

    詳解Spring?Security?捕獲?filter?層面異常返回我們自定義的內(nèi)容

    Spring?的異常會轉(zhuǎn)發(fā)到?BasicErrorController?中進(jìn)行異常寫入,然后才會返回客戶端。所以,我們可以在?BasicErrorController?對?filter異常進(jìn)行捕獲并處理,下面通過本文給大家介紹Spring?Security?捕獲?filter?層面異常,返回我們自定義的內(nèi)容,感興趣的朋友一起看看吧
    2022-05-05
  • SpringBoot集成thymeleaf渲染html模板的步驟詳解

    SpringBoot集成thymeleaf渲染html模板的步驟詳解

    這篇文章主要給大家詳細(xì)介紹了SpringBoot集成thymeleaf如何使實(shí)現(xiàn)html模板的渲染,文中有詳細(xì)的代碼示例,具有一定的參考價值,需要的朋友可以參考下
    2023-06-06
  • JAVA實(shí)現(xiàn)Excel和PDF上下標(biāo)的操作代碼

    JAVA實(shí)現(xiàn)Excel和PDF上下標(biāo)的操作代碼

    這篇文章主要介紹了JAVA實(shí)現(xiàn)Excel和PDF上下標(biāo),本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-09-09
  • Mybatis-Plus如何使用分頁實(shí)例詳解

    Mybatis-Plus如何使用分頁實(shí)例詳解

    最近在研究mybatis,然后就去找簡化mybatis開發(fā)的工具,下面這篇文章主要給大家介紹了關(guān)于Mybatis-Plus如何使用分頁的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-03-03
  • springboot配置文件的加載順序解析

    springboot配置文件的加載順序解析

    這篇文章主要介紹了springboot配置文件的加載順序解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-02-02
  • SpringBoot中的@Component注解源碼

    SpringBoot中的@Component注解源碼

    在SpringBoot中,@Component注解用于標(biāo)識一個類為Bean,并由Spring進(jìn)行管理,它需要配合@ComponentScan注解使用,后者負(fù)責(zé)掃描包含@Component的類,并進(jìn)行自動裝配,本文給大家介紹SpringBoot中的@Component注解源碼,感興趣的朋友一起看看吧
    2024-01-01
  • Spring MVC攔截器_動力節(jié)點(diǎn)Java學(xué)院整理

    Spring MVC攔截器_動力節(jié)點(diǎn)Java學(xué)院整理

    Spring MVC的攔截器,是屬于HandlerMapping級別的,可以有多個HandlerMapping ,每個HandlerMapping可以有自己的攔截器,具體內(nèi)容詳情大家通過本文學(xué)習(xí)吧
    2017-08-08

最新評論