org.slf4j.Logger中info()方法的使用详解

网友投稿 315 2022-09-06


org.slf4j.Logger中info()方法的使用详解

目录org.slf4j.Logger中info()方法如果info()方法参数为以下类型使用范例1使用范例2如果info()方法参数如下使用范例1如果info()方法参数如下使用范例1log.info()传入多个参数的方法

org.slf4j.Logger中info()方法

如果info()方法参数为以下类型

public void info(String format, Object argArray[])

{

if(logger.isInfoEnabled())

{

FormattingTuple ft = MessageFormatter.arrayFormat(format, argArray);

logger.log(FQCN, Level.INFO, ft.getMessage(), ft.getThrowable());

}

}

使用范例1

private final Logger log = LoggerFactory.getLogger(getClass());

log.info("backlog={}", new Object[]{backlog});//backlog为java对象,可重写toString()方法来实现输出具体属性

输出如下:

backlog=Backlog [backlogId=null, employeeId=36, backlogHead=Test, backlogBody=时间:2016-10-1,地点:二楼四号会议室, createDate=Tue Nov 01 16:44:03 CST 2016, scheduledDate=Mon Feb 01 16:44:03 CST 2016]

使用范例2

private final Logger log = LoggerFactory.getLogger(getClass());

log.info("add Backlog -> employeeId={}, backlogHead={}, scheduledDate={}", new Object[]{

backlog.getEmployeeId(), backlog.getBacklogHead(), backlog.getScheduledDate()});

输出如下:

add Backlog -> employeeId=36, backlogHead=Test, scheduledDate=Mon Feb 01 16:44:03 CST 2016]

如果info()方法参数如下

public void info(String msg)

{

logger.log(FQCN, Level.INFO, msg, null);

}

使用范例1

log.info("backlog=" + backlog);

输出结果:

backlog=Backlog [backlogId=null, employeeId=36, backlogHead=Test, backlogBody=时间:2016-10-1,地点:二楼四号会议室, createDate=Tue Nov 01 16:44:03 CST 2016, scheduledDate=Mon Feb 01 16:44:03 CST 2016]

如果info()方法参数如下

public void info(String format, Object arg)

{

if(logger.isInfoEnabled())

{

FormattingTuple ft = MessageFormatter.format(format, arg);

logger.log(FQCN, Level.INFO, ft.getMessage(), ft.getThrowable());

}

}

使http://用范例1

log.info("delete backlog -> backlogId={}", backlogId);

输出如下:

delete backlog -> backlogId=69

总结:如果第二个参数是Object,则第一个String参数里要有”{}”对应,如果是Object[]数组,数组里有几个对象,前面的String参数就要有几个{}花括号对应。

log.info()传入多个参数的方法

不知道项目里用的是啥 ** 版本的 log4j

居然不能传入变长参数

logger.info(String.format("%s %s %s", username, feature, "1111"));

只好采用这种方式啦


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Python基础-1.对象及数字对象(python对象的定义)
下一篇:# yyds干货盘点 # 盘点一道Python中的yield生成器的题目
相关文章

 发表评论

暂时没有评论,来抢沙发吧~