package ex.log;
/**
* 引入Logger LoggerFactory
*/
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* 建议在打印日志时引入slf4j相关接口或类,不要使用log4j或logback中的接口或类,原因如下
* 1.使用slf4j方便日志框架的切换。
* slf4j是日志框架的接口定义,log4j或logback是slf4j的实现。
* 比如现在用的log4j,如果想换成logback,只需要更换jar包即可,不用更改代码,这就是面向接口编程的一种体现。
* 如果使用log4j的类或接口,在更换jar包的同时也要修改代码。
* 所以下面的语句中所涉及的类、接口都要引入slf4j中类或接口
* public static Logger logger = LoggerFactory.getLogger(XXXX.class);
*
*
* 2. 使用log打印参数时不用拼接字符串,减少内存占用,slf4j支持通过{}进行参数占位
* logger.info("{} + {} = {}", a, b, c);
*
*
*/
public class App {
//Logger LoggerFactory来自slf4j
public static Logger logger = LoggerFactory.getLogger(App.class);
public static void main(String[] args) {
int a = 1;
int b = 2;
int c = 3;
//可以这样打印参数,使用{}作为参数值的占位符
logger.info("{} + {} = {}", a, b, c);
//不用通过拼接方式打印参数,减少内存占用
logger.info(a + " + " + b + " = " + c);
}
}