在IDEASpring Boot项目中,在spring-boot-starter依赖项中,默认已经集成了SLF4j日志框架。
在添加了Lombok依赖项后,可以在需要输出日志的类上添加@Slf4j注解,则Lombok框架会在编译期自动添加名为log的日志变量。
若添加了Lombok依赖项后,IDEA中不显示@SLF4J注解可能是maven没刷新可刷新或者重启,又或者可在插件中下载Lombok插件如下图
日志的显示级别,根据日志信息内容的重要程度,从低到高依次为:
trace:跟踪信息
debug:调试信息
info:一般信息
warn:警告信息
error:错误信息
在SLF4j中,调用log变量时,有以上5种级别对应的方法,调用与日志显示级别对应的方法,则输出的日志就是对应的级别,例如调用log.debug()时,输出的日志就是DEBUG级别的日志,调用log.warn()时,输出的日志就是WARN级别的日志。
在Spring Boot项目中,默认的显示级别是info,相比info较低级别的日志不会被输出!
在Spring Boot项目中,可以在application.properties中通过logging.level.包名属性来设置日志的显示级别:
关于以上配置:
包名部分,必须至少写1级包名,例如logging.level.cn,如果没有包名,则是错误的
配置的包名是”根包“,所以子孙包及其下的所有类的日志都会是以上配置的级别
如果认为有必要的话,甚至可以配置到具体的类
使用日志的好处:
可以通过简单的配置,实现控制日志的显示级别,所以,可以使得某些日志仅开发时能输出,在生产环境中不会输出
使用日志时,可以使用常量字符串,输出结果中的变量值均在此常量字符串中使用占位符表示即可,所以,字符串的处理效率非常高,并且,代码简洁
之前初学代码时用的输出语句: System.out.println();之后可以改成用日志输出,这样可以使我们代码更加清晰直观,也可以高端些。