相关依赖的导入
slf4j是一个日志门面模式的框架,只对调用者开放少量接口用于记录日志
主要接口方法有
debug
warn
info
error
trace
在idea中可以引入lombok框架,使用@Slf4j注解,在编译时动态成功日志调用实例。
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.12</version>
</dependency>
还需要引入日志相关依赖:log4j、slf4j-api、slf4j-log4j12
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.30</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.30</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
注意slf4j两个相关的jar包版本应一致,不一致容易产生问题。
(如果使用的是 log4j的日志实现类)还应该加入log4j.properties
的日志配置文件
# Configure logging for testing: optionally with log file
log4j.rootLogger=info, stdout, logfile
# log4j.rootLogger=WARN, stdout, logfile
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
# 配置logfile输出到文件中 文件大小到达指定尺寸的时候产生新的日志文件
log4j.appender.logfile=org.apache.log4j.RollingFileAppender
# 保存编码格式
log4j.appender.logfile.Encoding=UTF-8
# 输出文件位置此为项目根目录下的logs文件夹中
log4j.appender.logfile.File=logs/root.log
# 后缀可以是KB,MB,GB达到该大小后创建新的日志文件
log4j.appender.logfile.MaxFileSize=10MB
# 设置滚定文件的最大值3 指可以产生root.log.1、root.log.2、root.log.3和root.log四个日志文件
log4j.appender.logfile.MaxBackupIndex=3
# 配置logfile为自定义布局模式
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %F %p %m%n
至此配置完成,可以使用注解。
注解的使用
@Slf4j注解使用
直接在类上添加注解@Slf4j,在方法内部使用。
自己定义logger
private static final Logger logger = LoggerFactory.getLogger("HelloServlet.class");
注意Logger导入的是slf4j下的包。
运行结果: