在Spring Boot项目中,spring-boot-starter
依赖项中已经包含日志框架!
在Spring Boot项目中,当添加了Lombok依赖项后,可以在任何类上添加@Slf4j
注解,则Lombok会在编译期声明一个名为log
的日志对象变量,此变量可以调用相关方法来输出日志!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16package cn.tedu.csmall.product; import lombok.extern.slf4j.Slf4j; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; @Slf4j @SpringBootTest public class Slf4jTests { @Test void testLog() { log.info("输出了一条日志……"); } }
SLF4j的日志的可显示级别,根据信息的重要程度,从不重要到严重依次是:
-
trace
-
debug
-
info
:一般信息 -
warn
:警告信息 -
error
:错误信息
调用log
变量来输出日志时,可以使用以上级别对应的方法,则可以输出对应级别的日志!
在Spring Boot项目中,日志的默认显示级别是info
,则默认情况下只会显示info
及更加严重的级别的日志!如果需要修改日志的显示级别,需要在application.properties
中配置logging.level
的属性,例如:
1
2# 日志的显示级别 logging.level.cn.tedu.csmall=info
注意:在配置以上属性时,必须在logging.level
右侧加上要配置显示级别的包的名称,此包名就是配置日志显示级别的根包。
输出日志的各个方法都被重载了多次,建议使用的方法例如:
1
2
3void trace(String var1); void trace(String var1, Object... var2);
提示:以上是
trace
方法,其它级别的日志也有完全相同参数列表的方法。
以上的第2个方法适用于在输出的日志中添加变量的值,在第1个字符串参数中,各变量均使用{}
表示,然后,通过第2个参数依次传入各变量对应的值即可,例如:
1
2
3int x = 1; int y = 2; log.trace("{}+{}={}", x, y, x + y);
使用以上方式输出时,会将字符串部分进行缓存(是一种预编译的做法),在执行时,并不会出现拼接字符串的情况,所以,在执行效率方面,比传统的System.out.println()
的要高很多!
最后
以上就是外向八宝粥最近收集整理的关于SLF4j日志的全部内容,更多相关SLF4j日志内容请搜索靠谱客的其他文章。
发表评论 取消回复