• JAVA日志框架log4j和slf4j


    简单总结下:

    1.log4j基本用法

        1)导包;

        2)配置log4j.properties文件;

        3)java类中写Logger。

    2.properties文件内容

        1)logger

        2)appender(5种,每种都有若干配置项)

    1 org.apache.log4j.ConsoleAppender(控制台)
    2 org.apache.log4j.FileAppender(文件)
    3 org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
    4 org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
    5 org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

        3)layout(4种,制定logger输出格式及内容)

    1 org.apache.log4j.HTMLLayout(以HTML表格形式布局)
    2 org.apache.log4j.PatternLayout(可以灵活地指定布局模式)
    3 org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串)
    4 org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等信息)

    3.log4j局部日志配置

        比如数据库访问日志、用户登录日志、操作日志,分开到不同的日志中。

    4.不同类型工程中properties文件的位置,及其它配置

        1)普通java或spring工程

        2)springmvc工程(另外需要配置web.xml)

        3)普通web工程(另外需要配置web.xml)

    5.log4j与slf4j的配合使用

      (摘)slf4j只是定义了一组日志接口,但并未提供任何实现。

      (摘)如果你的代码使用slf4j的接口,具体日志实现框架你喜欢用log4j,其他人的代码也用slf4j的接口,具体实现未知,那你依赖其他人jar包时,整个工程就只会用到log4j日志框架,这是一种典型的门面模式应用,与jvm思想相同,我们面向slf4j写日志代码,slf4j处理具体日志实现框架之间的差异,正如我们面向jvm写java代码,jvm处理操作系统之间的差异,结果就是,一处编写,到处运行。况且,现在越来越多的开源工具都在用slf4j了。

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

        当然了,slf4j-log4j12这个包肯定依赖了slf4j和log4j,所以使用slf4j+log4j的组合只要配置上面这一个依赖就够了。

     --------------------------------------------------

        昨天简单使用了slf4j的部分内容,这里暂时先了解一下,还未具体操作。

  • 相关阅读:
    递归函数 二分查找
    内置函数
    迭代器 生成器 推导式
    装饰器函数的有用信息
    函数名 闭包 装饰器
    动态参数 命名空间
    C#_LINQ(LINQ to Entities)
    C#_MVC 自定义AuthorizeAttribute实现权限管理
    C#_MVC3之使用Authorize简单的验证登录(一)
    C#_MVC_分页update
  • 原文地址:https://www.cnblogs.com/bj20170624/p/7080740.html
Copyright © 2020-2023  润新知