对于占位符的形式而言,只有在我们需要的时候才会提取字符串,这样就会避免创建string对象的时候消耗大量的资源。
传统的打印方式是用+号拼接
java中Logger(org.slf4j.Logger)提供了占位符打印日志,即增加可读性,又降低了内存的使用消耗
因为string对象是不可变的,所以会消耗大量的堆内存,一旦我们用了字符串拼接,就有大量的字符串占用机器的内存,但是当我们用占位符的时候,只有在用到的时候才会动态的创建
slf4j 目前提供了TRACE, DEBUG, INFO, WARN, ERROR 四种level
在类中加入
private final static Logger LOG= LoggerFactory.getLogger(MyClass.class);
在pom.xml引入
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.12</version>
</dependency>
logger.info()其中 {}表示占位符
logger.info("from:{},to:{},amount:{}",from,to,amount);