SpringBoot logback日志框架使用過(guò)程解析
一、基本知識(shí)說(shuō)明
SpringBoot默認(rèn)使用logback作為日志框架 ,所以引入起步依賴(lài)后就可以直接使用logback,不需要其他依賴(lài)。
SpringBoot會(huì)默認(rèn)加載classpath:logback.xml或者classpath:logback-spring.xml 作為日志的配置文件,在springboot項(xiàng)目中可以直接把日志配置文件放在resources目錄下。
簡(jiǎn)單使用時(shí)也可以不使用日志配置文件,將日志相關(guān)的配置直接放在application.yml中,如下
#日志設(shè)置
logging:
file: root.log
level:
com:
lyy:
dao: debug
其中file選項(xiàng)用來(lái)指定日志文件輸出的位置,可以是相對(duì)路徑,也可以是絕對(duì)路徑。
level選項(xiàng)用來(lái)指定日志的級(jí)別,可以指定總的級(jí)別level: info,也可以像上邊這樣指定某個(gè)包中日志的輸出級(jí)別。
二、代碼示例
logback中支持使用slf4j來(lái)記錄日志,所以可以使用如下的方式來(lái)記錄日志
2.1 創(chuàng)建日志記錄器
private final static Logger logger= LoggerFactory.getLogger(CategoryDataServiceImpl.class);
這里需要導(dǎo)入以下兩個(gè)類(lèi),都是slf4j中的類(lèi)
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
2.2 記錄日志
使用日志記錄器來(lái)記錄日志
logger.info("com.lyy.service.impl.CategoryDataServiceImpl.findAll is run");
三、輸出mybatis的sql到日志文件中
springboot整合mbatis后如何把sql語(yǔ)句輸出到日志文件中,
因?yàn)閙ybatis輸出sql的日志級(jí)別默認(rèn)是debug,所以這里有兩種實(shí)現(xiàn)方式:
(1) 把整個(gè)工程的日志級(jí)別都調(diào)整成debug,按一中的方法level: info,
(2) 指定dao接口所在的包的日志輸出級(jí)別是debug
#日志設(shè)置
logging:
file: root.log
level:
com:
lyy:
dao: debug
按上面的方法配置后就可以把mybatis的sql輸出到日志文件中
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java并發(fā)編程專(zhuān)題(十一)----(JUC原子類(lèi))數(shù)組類(lèi)型詳解
這篇文章主要介紹了JAVA JUC原子類(lèi) 數(shù)組類(lèi)型詳解的相關(guān)資料,文中示例代碼非常詳細(xì),幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下2020-07-07
Java觀察者模式之實(shí)現(xiàn)對(duì)象間的一對(duì)多依賴(lài)
這篇文章主要介紹了Java觀察者模式之實(shí)現(xiàn)對(duì)象間的一對(duì)多依賴(lài)的方法,Java觀察者模式是一種行為型設(shè)計(jì)模式,用于實(shí)現(xiàn)對(duì)象之間的消息傳遞和通信,文中有詳細(xì)的實(shí)現(xiàn)步驟和代碼示例,,需要的朋友可以參考下2023-05-05
springboot中在非bean類(lèi)中調(diào)用bean的實(shí)現(xiàn)方法
在Spring Boot中,非Bean類(lèi)調(diào)用Bean方法通常需要通過(guò)靜態(tài)方法獲取Bean實(shí)例,然后調(diào)用相應(yīng)的方法,這種方法避免了直接在非Bean類(lèi)中注入Bean,保持了代碼的簡(jiǎn)潔和可維護(hù)性,通過(guò)這種方式,可以在不改變?cè)写a結(jié)構(gòu)的情況下,實(shí)現(xiàn)Bean方法的調(diào)用2025-02-02
SpringBoot中@ComponentScan的使用詳解
這篇文章主要介紹了SpringBoot中@ComponentScan的使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11
springboot websocket集群(stomp協(xié)議)連接時(shí)候傳遞參數(shù)
這篇文章主要介紹了springboot websocket集群(stomp協(xié)議)連接時(shí)候傳遞參數(shù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07
用Java實(shí)現(xiàn)簡(jiǎn)單ATM機(jī)功能
這篇文章主要為大家詳細(xì)介紹了用Java實(shí)現(xiàn)簡(jiǎn)單ATM機(jī)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01
一次因Java應(yīng)用造成CPU過(guò)高的排查實(shí)踐過(guò)程
一個(gè)應(yīng)用占用CPU很高,除了確實(shí)是計(jì)算密集型應(yīng)用之外,通常原因都是出現(xiàn)了死循環(huán)。下面這篇文章主要給大家介紹了一次因Java應(yīng)用造成CPU過(guò)高的排查實(shí)踐過(guò)程,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2018-11-11
Java?CyclicBarrier錯(cuò)誤使用的實(shí)例
文章描述了一個(gè)Java程序使用CyclicBarrier實(shí)現(xiàn)兩個(gè)線程交替打印字母和數(shù)字時(shí)遇到的問(wèn)題,由于線程執(zhí)行順序不當(dāng),導(dǎo)致輸出結(jié)果與預(yù)期不符,通過(guò)調(diào)整線程的等待和打印順序,解決了問(wèn)題,文章還提供了一個(gè)控制流圖來(lái)詳細(xì)解釋修改前后的程序邏輯2025-01-01
IDEA 2021.1 操作SVN 最新超詳細(xì)教程(圖文)
本教程將通過(guò)idea從svn服務(wù)器中的任意一個(gè)分支檢出代碼(本文采用branches),然后再idea中創(chuàng)建新的分支、提交代碼、拉取代碼、合并分支等操作進(jìn)行一一記錄,暫不包含代碼合并,對(duì)idea2021.1操作svn相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)下吧2021-05-05

