关于这两者的组合应用带来的好处,google都有 就不说了。

首先说下配置,

工作笔记:在myeclipse 中创建一个java project

创建一个 TestSlf4J 类

package com.joyce.quartz.main;
import org.slf4j.Logger; import org.slf4j.LoggerFactory;
public class TestSlf4J {
private static final Logger logger =LoggerFactory.getLogger(TestSlf4J.class);
public static void main(String[] args) {
logger.error("Hello world {}");
System.out.println("2323");
try { int i = 1/0;
} catch (Exception e) {
logger.error("出现异常",e); }
}
}

同时把slf4j-api-1.1.jar    slf4j-log4j12-1.6.1.jar   log4j-1.2.16.jar 放入项目里。

再添加一个log4j.properties

# An example log4j configuration file that outputs both to System.out
# and a file named 'test'. # For the general syntax of property based configuration files see the
# documenation of org.apache.log4j.PropertyConfigurator. # WARNING: Location information can be useful but is very costly in
# terms of computation. # The root logger uses the appender called A1. # The root logger uses the appenders called A1 and A2. Since no level
# is specified, note the empty string between the comma (",") and the
# equals sign ("="), the level of the root logger remains
# untouched. Log4j always initializes the level for the root logger to
# DEBUG. The root logger is the only logger that has a default
# level. Bu default, all other loggers do not have an assigned level,
# such that they inherit their level instead. log4j.rootLogger=, A1, A2 # A1 is set to be ConsoleAppender sending its output to System.out
log4j.appender.A1=org.apache.log4j.ConsoleAppender # A1 uses PatternLayout.
log4j.appender.A1.layout=org.apache.log4j.PatternLayout # The conversion pattern consists of date in ISO8601 format, level,
# thread name, logger name truncated to its rightmost two components
# and left justified to 17 characters, location information consisting
# of file name (padded to 13 characters) and line number, nested
# diagnostic context, the and the application supplied message log4j.appender.A1.layout.ConversionPattern=%d %-5p [%t] %-17c{2} (%13F:%L) %3x - %m%n # Appender A2 writes to the file "test".
log4j.appender.A2=org.apache.log4j.FileAppender
log4j.appender.A2.File=e:/test.log # Truncate 'test' if it aleady exists.
log4j.appender.A2.Append=false # Appender A2 uses the PatternLayout.
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=%-5r %-5p [%t] %c{2} %d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p]%m%n # In this example, we are not interested in INNER loop or SWAP
# messages. You might try to set INNER and SWAP to DEBUG for more
# verbose output. log4j.logger.org.apache.log4j.examples.SortAlgo.INNER=INFO
log4j.logger.org.apache.log4j.examples.SortAlgo.SWAP=INFO

项目结构如图:

最后 运行TestSlf4J类在e盘就生成了一个test.log文件  生成内容如下:

注意:

slf4j-log4j12-1.6.1.jar是连接包,我们在java里直接用slf4j创建的log,如果没有这个连接包,是创建不出log的

还要注意的是,在没加这个连接包的时候,

会报

SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder”

有解决办法是说:下载slf4j-nop.jar,添加到路径中,就解决问题了
但我这边是不能下这个包,加了会报错

所以。总的加那三个包就可以了

版权声明:本文为博主原创文章,未经博主允许不得转载。

slf4j+log4j的初次使用的更多相关文章

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

    slf4j log4j logback关系详解和相关用法 写java也有一段时间了,一直都有用slf4j log4j输出日志的习惯.但是始终都是抱着"拿来主义"的态度,复制粘贴下配 ...

  2. slf4j,log4j,logback 初步使用

    log4j,slf4j,logback简单介绍见 LogBack简易教程 Logback浅析 简单的将,slf4j是一个日志的框架,有各种日志的接口,但是并不包含实际的写日志的方法. log4j,lo ...

  3. slf4j+log4j在Java中实现日志记录

    小Alan今天来跟大家聊聊开发中既简单又常用但必不可少的一样东西,那是什么呢?那就是日志记录,日志输出,日志保存. 后面就统一用日志记录四个字来形容啦. 日志记录是项目的开发中必不可少的一个环节,特别 ...

  4. Spring中配置使用slf4j + log4j

    本人也是查看别人博客获得的方法,详细讲解请参照 https://www.cnblogs.com/yuxiaole/p/9297266.html 下面进入正题: 1.在pom.xml中注入相关的依赖 & ...

  5. 常见java日志系统的搭配详解:关于slf4j log4j log4j2 logback jul jcl commons-logging jdk-logging

    先看一张图: 是不是有点晕, 晕就对了.这个仅仅是 slf4j 的情况,实际上, 我们不仅要接触到 slf4j ,有时候还会接触其他的日志系统.且看下文分解. 1 直接使用各个日志系统 1.1 直接使 ...

  6. 在android中配置 slf4j + log4j 日志记录框架

    需求: 在项目开发中,需要记录 操作日志 .起初自己写了个简单的日志记录文本写入到文本的方法,后来随着项目的膨胀,需要考虑更多的操作,开始考虑性能问题. 实现: 考虑使用 slf4j + log4j ...

  7. slf4j + log4j 是如何初始化的

    SLF4J的全称是 Simple Logging Facade for Java(简单java日志门面) SLF4J自己不提供具体的日志功能实现,只是提供了一个统一的日志门面,在这个统一的门面之下,用 ...

  8. slf4j log4j logback相关用法

    Java的简单日志门面( Simple Logging Facade for Java SLF4J)作为一个简单的门面或抽象,用来服务于各种各样的日志框架,比如java.util.logging.lo ...

  9. slf4j log4j logback log4j2关系详解和相关用法

    来源:slf4j log4j logback关系详解和相关用法https://www.cnblogs.com/Sinte-Beuve/p/5758971.html The Simple Logging ...

随机推荐

  1. 文本处理三剑客之 sed

    sed:文本流编辑器 主要是对文件的快速增删改查,查询功能中最常用的是过滤,取行 sed [选项] [sed内置命令字符] [输入文件] Options: -n:取消默认的sed输出,常与sed内置命 ...

  2. jQuery animate() 改变颜色

    jQuery提供的animate()方法可以实现一些简单的动画效果,但是其核心库不提供颜色动画的效果,如果想实现颜色动画,需要下载相关插件. 但是,animate()的参数中有一个complete,通 ...

  3. Linux服务-mysql基础篇

    目录 1. 关系型数据库介绍 1.1 数据结构模型 1.2 RDBMS专业名词 1.3 关系型数据库的常见组件 1.4 SQL语句 2. mysql安装与配置 2.1 mysql安装 2.2 mysq ...

  4. 【OS X系统】Xcode中搭建Python环境。

    虽然按照网上教程一步一步来,但还是遇到了几个错误点,现整理出来,主要是自己做个笔记,同时也希望能帮助到其他像我一样第一次在Xcode上搭建Python环境的人.首先感谢原作者:https://zhid ...

  5. 14 [网络编程]-socket

    1.互联网协议 博客:http://www.cnblogs.com/linhaifeng/articles/6129246.html 2.socket层 Socket是应用层与TCP/IP协议族通信的 ...

  6. CF1017G The Tree 树链剖分

    CF1017G The Tree LG传送门 树链剖分好题. 乍一看还以为是道沙比题,然后发现修改操作有点不一样. 但是如果你对基本操作还不太熟练,可以看看我的树链剖分总结 有三个操作: 从一个点往下 ...

  7. 【bzoj1066】【luogu2472】[SCOI2007]蜥蜴

    1066: [SCOI2007]蜥蜴 Time Limit: 1 Sec  Memory Limit: 162 MB Description 在一个r行c列的网格地图中有一些高度不同的石柱,一些石柱上 ...

  8. java并发编程——并发容器

    概述 java cocurrent包提供了很多并发容器,在提供并发控制的前提下,通过优化,提升性能.本文主要讨论常见的并发容器的实现机制和绝妙之处,但并不会对所有实现细节面面俱到. 为什么JUC需要提 ...

  9. 大神教你零基础学PS,30堂课从入门到精通

    ps视频教程,ps自学视频教程.ps免费视频教程下载,大神教你零基础学PS教程视频内容较大,分为俩部分: 大神教你零基础学PS--30堂课从入门到精通第一部分:百度网盘,https://pan.bai ...

  10. Python学习环境搭建——VMware,Ubuntu,Anaconda,Pycharm

    1.安装VMware虚拟机,版本是14.1.2(含注册码) 链接:https://pan.baidu.com/s/1ffNLONDjEMYDAenE36gRpA 密码:yazx 注:我的电脑分辨率较高 ...