在工作复盘时,检查代码的过程中,发现好多代码在打印日志的时候,会用字符串拼接,这是是非常不好的现象。
对于占位符的形式而言,只有在我们需要的时候才会提取字符串,这样就会避免创建string对象的时候消耗大量的资源。
因为string对象是不可变的,所以会消耗大量的堆内存,一旦我们用了字符串拼接,就有大量的字符串占用机器的内存,但是当我们用占位符的时候,只有在用到的时候才会动态的创建
slf4j 目前提供了TRACE, DEBUG, INFO, WARN, ERROR 四种level
1、如何使用
1.1
在类中加入 private final static Logger LOG= LoggerFactory.getLogger(MyClass.class);
1.2
在pom.xml引入
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.12</version>
</dependency>
1.3
public void error(String format, Object... arguments);
logger.error("错误信息,占位符1{},占位符2{}", 参数1, 参数2);
想写几个写几个占位符