... public abstract void debug(String message); public abstract void debug(String message, Throwable t); ...
现在的Log抽象类每个日志级别只定义了这两个方法,但习惯了Logback的参数化调用后,很难再接受字符串拼接形式
因此,建议每个日志级别都增加以下方法:
... public abstract void debug(String message, Object... args); ...
对于log4j等不支持参数化调用的日志实现类,也可以进行兼容实现:
//com.jfinal.log.Log4jLog public void debug(String message, Object... arg) { message = String.format(message.replace("{}", "%s"), args); log.log(callerFQCN, Level.DEBUG, message, null); } ...
自定义的Logback日志实现类,就更简单了。
同时还能继续通过Log.getLog(xxx.class)实现统一的日志管理。
一个小建议,希望JFinal越来越好。
你的建议相对于其他建议,还给了解决方案,非常难得,感谢感谢