国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Spring Boot 2.x(八):日志框架的選擇和使用

lpjustdoit / 845人閱讀

摘要:我們?yōu)樯兑萌罩咀畛跷覀冮_始接觸的時(shí)候,我們通常會(huì)使用將我們想要知道的信息打印到控制臺(tái)。為什么是默認(rèn)情況下,會(huì)用來記錄日志,并用級(jí)別輸出到控制臺(tái)。

我們?yōu)樯兑萌罩荆?/b>

最初我們開始接觸Java的時(shí)候,我們通常會(huì)使用System.out.println()將我們想要知道的信息打印到控制臺(tái)。
但是,如果在服務(wù)器上我們?nèi)ミ\(yùn)行我們的Java程序,這個(gè)時(shí)候就凸顯了日志對(duì)于一個(gè)系統(tǒng)來說的重要性,查找異常信息、分析系統(tǒng)運(yùn)行情況等都需要用到日志。

為什么是SLF4J?

默認(rèn)情況下,Spring Boot會(huì)用SLF4J + Logback來記錄日志,并用INFO級(jí)別輸出到控制臺(tái)。

SLF4J,即簡(jiǎn)單日志門面(Simple Logging Facade for Java),它可以看做是一個(gè)接口框架,并不提供具體的實(shí)現(xiàn),具體的實(shí)現(xiàn)由類似于Log4jLog4j2Logback等等這樣的日志框架去完成。

我們?yōu)槭裁匆趯?shí)際的應(yīng)用中去使用SLF4J的API呢?
在阿里巴巴的開發(fā)手冊(cè)上也給我們明確【強(qiáng)制】規(guī)定了

而百度百科上也給出了相應(yīng)的解釋:

SLF4J讓你的代碼獨(dú)立于任何特定的日志記錄API,可以讓我們的程序更加的健壯,不會(huì)讓你因?yàn)椴煌罩镜膶?shí)現(xiàn)而導(dǎo)致的問題去分心。

使用SLF4J的另外一個(gè)理由就是,它可以支持占位符

String name = "Vi";
logger.debug("My Name is {}", name);

這段程序在運(yùn)行時(shí)刻才會(huì)拿到name這不僅縮減了代碼中的許多字符串連接,而且減少了創(chuàng)建String對(duì)象所需要的堆內(nèi)存資源

怎么使用SLF4J?

如果我們?cè)谝粋€(gè)Spring Boot 的程序中去使用SLF4J,我們不需要去引入其他的包,因?yàn)槲覀円氲挠嘘P(guān)spring-boot-starter中就已經(jīng)包含了有關(guān)slf4j的jar包。我們只需要通過LoggerFactory去獲取即可:

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
...
private static final Logger logger = LoggerFactory.getLogger(ResponseAop.class);

這里需要注意看我們選擇的是不是slf4j包下的Logger,不要選錯(cuò)了喲。

配合Lombok使用@Slf4j

首先在pom.xml中添加Lombok的依賴:

        
           org.projectlombok
            lombok
            true
        

然后打開IDEA的設(shè)置項(xiàng),在Plugins中查找:

注意安裝插件后記得重啟使其生效!

然后,我們?cè)陧?xiàng)目中就可以這樣去使用:

@Slf4j
public class Slf4JTest {
    public static void main(String[] args) {
        log.info("This is a Slf4jTest");
    }
}
關(guān)于日志的配置

這里我就偷個(gè)懶,因?yàn)榫W(wǎng)上一搜一大堆,但是實(shí)際上你用的時(shí)候還是要根據(jù)自己的項(xiàng)目的情況進(jìn)行使用的(你可以關(guān)注我,我會(huì)在后面的項(xiàng)目實(shí)戰(zhàn)中去配置,并給出源碼)。

這里需要注意一點(diǎn):默認(rèn)情況下,Spring Boot將日志輸出到控制臺(tái),不會(huì)寫到日志文件。如果要編寫除控制臺(tái)輸出之外的日志文件,則需在application.yml中設(shè)置logging.filelogging.path屬性。但是這倆屬性同時(shí)配置的時(shí)候,只有logging.file生效!
公眾號(hào)

原創(chuàng)文章,文筆有限,才疏學(xué)淺,文中若有不正之處,萬望告知。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/75710.html

相關(guān)文章

  • Java 程序員必備 15 個(gè)框架,前 3 個(gè)地位無可動(dòng)搖!

    摘要:官網(wǎng)源碼推薦從開始手寫一個(gè)框架更多請(qǐng)?jiān)诩夹g(shù)棧微信公眾號(hào)后臺(tái)回復(fù)關(guān)鍵字。是一個(gè)開放源代碼的對(duì)象關(guān)系映射框架,它對(duì)進(jìn)行了非常輕量級(jí)的對(duì)象封裝,它將與數(shù)據(jù)庫表建立映射關(guān)系,是一個(gè)全自動(dòng)的框架。 Java 程序員方向太多,且不說移動(dòng)開發(fā)、大數(shù)據(jù)、區(qū)塊鏈、人工智能這些,大部分 Java 程序員都是 Java Web/后端開發(fā)。那作為一名 Java Web 開發(fā)程序員必須需要熟悉哪些框架呢? 今天...

    galaxy_robot 評(píng)論0 收藏0
  • spring boot - 收藏集 - 掘金

    摘要:引入了新的環(huán)境和概要信息,是一種更揭秘與實(shí)戰(zhàn)六消息隊(duì)列篇掘金本文,講解如何集成,實(shí)現(xiàn)消息隊(duì)列。博客地址揭秘與實(shí)戰(zhàn)二數(shù)據(jù)緩存篇掘金本文,講解如何集成,實(shí)現(xiàn)緩存。 Spring Boot 揭秘與實(shí)戰(zhàn)(九) 應(yīng)用監(jiān)控篇 - HTTP 健康監(jiān)控 - 掘金Health 信息是從 ApplicationContext 中所有的 HealthIndicator 的 Bean 中收集的, Spring...

    rollback 評(píng)論0 收藏0
  • Spring Boot 自定義日志詳解

    摘要:定制日志文件簡(jiǎn)單的日志配置不能滿足實(shí)際項(xiàng)目需求,那可以通過引用定制日志文件的形式達(dá)到目的。能根據(jù)類路徑下的類庫和配置文件自動(dòng)配置對(duì)應(yīng)的日志框架。看到這里,相信你對(duì)的日志應(yīng)該有了一個(gè)全面的了解。 本節(jié)內(nèi)容基于 Spring Boot 2.0. 你所需具備的基礎(chǔ) 什么是 Spring Boot? Spring Boot 核心配置文件詳解 Spring Boot 開啟的 2 種方式 Spr...

    baishancloud 評(píng)論0 收藏0
  • 吐血整理 20 道 Spring Boot 面試題,我經(jīng)常拿來面試別人!

    摘要:你如何理解中的可以理解為啟動(dòng)器,它包含了一系列可以集成到應(yīng)用里面的依賴包,你可以一站式集成及其他技術(shù),而不需要到處找示例代碼和依賴包。如你想使用訪問數(shù)據(jù)庫,只要加入啟動(dòng)器依賴就能使用了。 面試了一些人,簡(jiǎn)歷上都說自己熟悉 Spring Boot, 或者說正在學(xué)習(xí) Spring Boot,一問他們時(shí),都只停留在簡(jiǎn)單的使用階段,很多東西都不清楚,也讓我對(duì)面試者大失所望。 下面,我給大家總結(jié)...

    haoguo 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<