log4j,slf4j,logback简单介绍见 LogBack简易教程

Logback浅析

简单的将,slf4j是一个日志的框架,有各种日志的接口,但是并不包含实际的写日志的方法。

log4j,logback则各自独立的实现了日志的写入。

1.使用log4j独立生成日志

项目中导入log4j.jar,log4j.properties或log4j.xml

package com.spike.test;

import java.io.IOException;
import java.sql.SQLException; import org.apache.log4j.Logger; public class Log4jExample {
static Logger log = Logger.getLogger(Log4jExample.class.getName()); public static void main(String[] args)throws IOException,SQLException{
log.debug("Debug");
log.info("Info");
log.error("error");
System.out.println(Log4jExample.class.getName()+" test");
}
}

输出结果如下,日志写入到log4j配置文件指定的文件中

[03 14:04:02,721 DEBUG] [main] test.Log4jExample - Debug
[03 14:04:02,723 INFO ] [main] test.Log4jExample - Info
[03 14:04:02,723 ERROR] [main] test.Log4jExample - error
com.spike.test.Log4jExample test

2.slf4j + log4j

项目中包含slf4j-api.jar,log4j.jar,slf4j-log4j.jar,以及log4j日志的配置文件

package com.spike.test;
import java.io.IOException;
import java.sql.SQLException; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; public class Slf4jExample { /* Get actual class name to be printed on */
static Logger log = LoggerFactory.getLogger(Slf4jExample.class.getName()); public static void main(String[] args)throws IOException,SQLException{
log.debug("Debug");
log.info("Info");
log.error("error");
System.out.println(Slf4jExample.class.getName()+" test");
}
}

输出结果如下,日志写入到log4j配置文件指定的文件

[03 14:07:50,548 DEBUG] [main] test.Slf4jExample - Debug
[03 14:07:50,549 INFO ] [main] test.Slf4jExample - Info
[03 14:07:50,549 ERROR] [main] test.Slf4jExample - error
com.spike.test.Slf4jExample test

3.slf4j + logback

项目中导入slf4j-api.jar,logback-access.jar,logback-classic.jar,logback-core-1.1.7.jar,以及logback.xml配置文件

package com.spike.test;

import java.io.IOException;
import java.sql.SQLException; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; public class LogbackExample { static Logger log = LoggerFactory.getLogger(Log4jExample.class.getName()); public static void main(String[] args)throws IOException,SQLException{ log.debug("Debug");
log.info("Info");
log.error("error");
System.out.println(Log4jExample.class.getName()+" test");
} }

输出结果如下,日志写入到logback.xml指定的文件中

2016-11-03 14:14:31,799 [DEBUG] [main] com.spike.test.Log4jExample [LogbackExample.java : 18] Debug
2016-11-03 14:14:31,803 [INFO] [main] com.spike.test.Log4jExample [LogbackExample.java : 19] Info
2016-11-03 14:14:31,803 [ERROR] [main] com.spike.test.Log4jExample [LogbackExample.java : 20] error
com.spike.test.Log4jExample test

参考

用slf4j+logback实现多功能日志解决方案 --- 转

LogBack入门实践

Logback 学习笔记

slf4j log4j logback关系详解和相关用法

SLF4J LOG4J-12下载地址

slf4j、jcl、jul、log4j1、log4j2、logback大总结

最新文章

  1. mysql中生产表格多列统计问题
  2. ToString和Convert.ToString处理null值
  3. Java_动态重新加载Class总结
  4. c/c++创建动态链接库
  5. VMware中网络设置之Bridged
  6. C# List根据某一字段排序 将字段相同的排序到一起
  7. mysql安装(Mac平台)
  8. windows7 下的日期没有internet时间的选项卡
  9. PHP四大安全策略
  10. 在Windows Server2008R2中导入Excel不能使用Jet 4.0的解决方法
  11. O-C相关-08-动态类型与静态类型
  12. CCS v5 无法启动解决办法及Launchpad仿真器电脑无法识别解决方法
  13. 我的Python成长之路---第四天---Python基础(14)---2016年1月23日(寒风刺骨)
  14. [JAVA] - Java OutOfMemoryError分类
  15. JAVA几种缓存技术介绍说明
  16. jira使用问题汇总
  17. python 叠加装饰器详解
  18. 转:在网站开发中很有用的8个 jQuery 效果【附源码】
  19. yum 安装mongodb mysql
  20. easyUI中datebox的格式显示

热门文章

  1. code first提示已有打开的与此 Command 相关联的 DataReader,必须首先将它关闭解决方法
  2. 三、线程同步之Sysnchronized关键字
  3. osx下配置Cocos2d-x 3.x Android开发环境
  4. spring security为不同用户显示各自的登录成功页面
  5. 1、iOS9 HTTP 不能正常使用的解决办法
  6. RDIFramework.NET — 基于.NET的快速信息化系统开发框架 - 5.3 数据库连接管理模块
  7. zencart后台增加菜单选项
  8. 使用UEditor
  9. 什么是流利语法Fluent Syntax
  10. DES加密深度优化——随机生成加密字符串
  11. Java I/O 总结
  12. Java 多线程 死锁 隐性死锁 数据竞争 恶性数据竞争 错误解决深入分析 全方向举例
  13. Hive管理表分区的创建,数据导入,分区的删除操作
  14. 潭州课堂25班:Ph201805201 tornado 项目 第七课 界面美化和静态文件处理(课堂笔记)
  15. Windows驱动——读书笔记《Windows驱动开发技术详解》
  16. Go 函数方法
  17. 用Emacs的这些年
  18. fit_transform和transform的区别
  19. android -------- 常用依赖库
  20. checkbox中jQuery对数组和对象的操作