成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

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

lpjustdoit / 854人閱讀

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

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

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

為什么是SLF4J?

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

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

我們?yōu)槭裁匆趯?shí)際的應(yīng)用中去使用SLF4J的API呢?
在阿里巴巴的開發(fā)手冊上也給我們明確【強(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對象所需要的堆內(nèi)存資源。

怎么使用SLF4J?

如果我們在一個(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中查找:

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

然后,我們在項(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將日志輸出到控制臺,不會(huì)寫到日志文件。如果要編寫除控制臺輸出之外的日志文件,則需在application.yml中設(shè)置logging.filelogging.path屬性。但是這倆屬性同時(shí)配置的時(shí)候,只有logging.file生效!
公眾號

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

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

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/75710.html

相關(guān)文章

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

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

    galaxy_robot 評論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 評論0 收藏0
  • Spring Boot 自定義日志詳解

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

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

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

    haoguo 評論0 收藏0

發(fā)表評論

0條評論

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