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
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

使用范例1:

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

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

  • 1
  • 2
  • 3

输出如下:

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]
 
 
  • 1

使用范例2:

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

log.info(“add Backlog -> employeeId={}, backlogHead={}, scheduledDate={}”, new Object[]{
backlog.getEmployeeId(), backlog.getBacklogHead(), backlog.getScheduledDate()});

  • 1
  • 2
  • 3
  • 4

输出如下:

add Backlog -> employeeId=36, backlogHead=Test, scheduledDate=Mon Feb 01 16:44:03 CST 2016]
 
 
  • 1
  • 如果info()方法参数如下:
public void info(String msg)
    {
        logger.log(FQCN, Level.INFO, msg, null);
    }
 
 
  • 1
  • 2
  • 3
  • 4

使用范例1:

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

输出结果:

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]
 
 
  • 1
  • 如果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());
        }
    }
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

使用范例1:

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

输出如下:

delete backlog -> backlogId=69
 
 
  • 1

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值