使用slf4j的优点:

提供带参数的日志输出方法(SLF4J 1.7及以后版本)。

pom中只需引入slf4j-log4j12,然后maven会引入它所依赖的其它JAR包。

slf4j和log4j结合使用步骤:

1.在pom文件中添加代码(非maven项目自行下载jar包):

  1. <dependency>
  2. <groupId>org.slf4j</groupId>
  3. <artifactId>slf4j-log4j12</artifactId>
  4. <version>1.7.2</version>
  5. </dependency>

2.添加log4j配置文件log4j.properties:

  1. # DEBUG,INFO,WARN,ERROR,FATAL
  2. LOG_LEVEL=INFO
  3.  
  4. log4j.rootLogger=${LOG_LEVEL},CONSOLE,FILE
  5.  
  6. log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
  7. log4j.appender.CONSOLE.Encoding=utf-8
  8. log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
  9. #log4j.appender.CONSOLE.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss} %C{8}@(%F:%L):%m%n
  10. log4j.appender.CONSOLE.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss} %C{1}@(%F:%L):%m%n
  11.  
  12. log4j.appender.FILE=org.apache.log4j.DailyRollingFileAppender
  13. log4j.appender.FILE.File=${catalina.base}/logs/workorder.log
  14. log4j.appender.FILE.Encoding=utf-8
  15. log4j.appender.FILE.DatePattern='.'yyyy-MM-dd
  16. log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
  17. #log4j.appender.FILE.layout=org.apache.log4j.HTMLLayout
  18. log4j.appender.FILE.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH\:mm\:ss} %C{8}@(%F\:%L)\:%m%n

3.在web.xml中配置log4j:

  1. <!-- 配置log4j配置文件路径 -->
  2. <context-param>
  3. <param-name>log4jConfigLocation</param-name>
  4. <param-value>classpath:conf/log4j.properties</param-value>
  5. </context-param>
  6. <!-- 60s 检测日志配置 文件变化 -->
  7. <context-param>
  8. <param-name>log4jRefreshInterval</param-name>
  9. <param-value>60000</param-value>
  10. </context-param>
  11.  
  12. <!-- 配置Log4j监听器 -->
  13. <listener>
  14. <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
  15. </listener>

4.在代码中打印日志:

  1. private Logger logger = LoggerFactory.getLogger(TaskJob.class);
  1. logger.info("带参日志测试:{}", "参数111");

日志输出:

  1. [INFO ] -- :: TaskJob@(TaskJob.java:):带参日志测试:参数111

slf4j和log4j结合使用步骤的更多相关文章

  1. SLF4J和log4j的使用

    概念 SLF4J:即简单日志门面(Simple Logging Facade for Java),不是具体的日志解决方案,它只服务于各种各样的日志系统.按照官方的说法,SLF4J是一个用于日志系统的简 ...

  2. java日志框架slf4j与log4j

    日志记录自然是非常重要的,但恐怕能记住slf4j与log4j等日志框架配置的人就很少了,这个东西不难,只是配置好后很少会去动它,开发新项目一般也是从其他项目拷贝,或者参照文档 废话不多说,先说log4 ...

  3. slf4j 和 log4j的关系及合用Maven配置

    最近因为项目实在是太忙,都没有时间学习.有时候会很矛盾,一方面是全心全意的想去快速做完项目,一方面又想学习点新东西.这样导致这两三个月都没有去学习一些新的东西,这周我开始创建自己的maven项目,因为 ...

  4. Slf4j与log4j及log4j2的关系及使用方法

    Slf4j与log4j及log4j2的关系及使用方法 slf4j slf4j仅仅是一个为Java程序提供日志输出的统一接口,并不是一个具体的日志实现方案,就比如JDBC一样,只是一种规则而已,所以单独 ...

  5. log4j日志整合输出(slf4j+commonslog+log4j+jdklogger)

    log4j日志整合输出(slf4j+commonslog+log4j+jdklogger) 博客分类: 日志   J2EE项目中,经常会用到很多第三方的开源组件和软件,这些组件都使用各自的日志组件,比 ...

  6. slf4j和log4j、logback

    现在主流java项目一般使用slf4j+log4j的日志方案,最近抽点时间扫了一下slf4j.log4j.logback的官方文档,做个笔记.这篇比较不打算描述具体的配置方法,因为官方文档已经讲得很清 ...

  7. SLF4J 与Log4J

    为什么要使用SLF4J而不是Log4J 每一个Java程序员都知道日志对于任何一个Java应用程序,尤其是服务端程序是至关重要的,而很多程序员也已经熟悉各种不同的日志库如java.util.loggi ...

  8. this version of SLF4J requires log4j version 1.2.12 or later.

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFacto ...

  9. Java日志框架SLF4J和log4j以及logback的联系和区别

    1.SLF4J(Simple logging Facade for Java) 意思为简单日志门面,它是把不同的日志系统的实现进行了具体的抽象化,只提供了统一的日志使用接口,使用时只需要按照其提供的接 ...

随机推荐

  1. 使用swap 清空vector

    //最简单的使用swap,清除元素并回收内存 vector <int>().swap(vecInt); //清除容器并最小化它的容量, // vecInt.swap(vector<i ...

  2. SpringCloud系列十:使用Feign实现声明式REST调用

    1. 回顾 前文的示例中是使用RestTemplate实现REST API调用的,代码大致如下: @GetMapping("/user/{id}") public User fin ...

  3. Graph Visualization

    1. 什么是graph visualization? Graph visualization is a way of representing structural information as di ...

  4. C++数组类型与函数类型

    之所以将C++的数组类型与函数类型拿到一块说,是因为两者在很多地方都一样. 首先,声明形式上类似: 数组类型:  type [num]                                 ...

  5. 游戏开发之coco2dx ---简化提炼tolua

    http://www.cnblogs.com/gl5773477/p/4234613.html

  6. 怎么用ChemDraw Pro绘制不定域共轭环

    ChemDraw Pro 14作为一款非常受欢迎的化学绘图软件,不论是化学分子结构.轨道,还是符号.箭头等图形都可以用它轻松的绘制出来,而且在其工具栏中,集成了10种环工具,可以对不同种类.不同尺寸的 ...

  7. day16 递归函数:一般的递归方法

    一.递归,在一个函数里面 调用 自己: pycharm的最大递归次数是997 查看与修改方法: # # print(sys.getrecursionlimit()) # sys.setrecursio ...

  8. Laravel5.1 模型初探

    Laravel的模型也是访问数据库的,它更加面向对象,一个模型对应着一张表 我们可以使用模型对数据做一些增删改查的操作. 1 创建模型 创建模型是可以使用Artisan控制台的: php artisa ...

  9. AdnroidUtils-常用工具类(showDiaLog/HTTP)

    1. HttpUtils 该工具类应用于Android客户端+Web服务器 /** * */ package com.nubb.auction.client.util; import java.uti ...

  10. phantom的使用

    phantom页面加载 通过Phantomjs,一个网页可以被加载.分析和通过创建网页对象呈现,访问我的博客园地址:http://www.cnblogs.com/paulversion/p/83938 ...