这里是修真院后端小课堂,每篇分享文从

【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】

八个方面深度解析后端知识/技能,本篇分享的是:

【 log4j和sout】

1.背景介绍

log4j可能是我们最常用的日志生成的依赖jar包了,当然还有其他的日志生成jar包,比如log4j2,等等。sout就是System.out.print/println,就是我们常用的控制台打印方法。

Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。

2.知识剖析

Log4j有三个主要的组件:Loggers(记录器),Appenders  (输出源)和Layouts(布局)。这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。

Loggers组件在此系统中被分为五个级别:DEBUG、INFO、WARN、ERROR和FATAL。

这五个级别是有顺序的,DEBUG < INFO < WARN < ERROR < FATAL,分别用来指定这条日志信息的重要程度。

Log4j有一个规则:只输出级别不低于设定级别的日志信息。

Appenders 配置日志信息输出。

Layouts 设置日志输出的格式,Layouts提供四种日志输出样式,如根据HTML样式、自由指定样式、包含日志级别与信息的样式和包含日志时间、线程、类别等信息的样式。

3.为什么不用sout

我们之前看到log4j的配置文件中有输出到文件的相关配置,这就是它和sout的区别,也是我们为什么使用log的关键点,因为我们查找日志信息的时候就可以到相应的日志文件中去查看,并且不会因为程序关闭等等因素丢失掉之前的日志信息,如果是sout的话,程序关闭,信息就丢失了,那我们想看到报错等等,就必须要重新运行程序。

4.扩展思考

log4j的配置我们用xml来配置

Log和sout的信息都是我们自定义的,那输入到.log文件中的就只有我们自定义的信息吗?

5.参考文献

http://www.open-open.com/lib/view/open1393488356958.html

PPT链接 :https://ptteng.github.io/PPT/PPT-java/java-task1-log4jandsout.html#/

实战操作:https://v.qq.com/x/page/j05584bvkjn.html

log4j和sout相关推荐

  1. 项目log4j日志管理详解

    项目log4j日志管理详解 项目log4j日志管理详解 log4j日志系统在项目中重要性在这里就不再累述,我们在平时使用时如果没有特定要求,只需在log4j.properties文件中顶入输出级别就行 ...

  2. MyBatis中的日志(LOG4J)

    1.日志工厂 如果一个数据库操作,出现了异常,我们需要排错,日志是我们很好的助手! 曾经:sout.debug 现在:日志工厂 SLF4J LOG4J [掌握] LOG4J2 JDK_LOGGING ...

  3. mybatis使用map插入数据和Mybatis的核心配置文件LOG4J

    mybatis使用map插入数据 UserMapper.java包中写入 int addUser2(Map<Object,String> map); Usermapper.xml < ...

  4. 用Logback记录日志,告别sout

    为自己的程序记录日志,是好的程序员需要用多年时间培养的好习惯.慢慢地要用日志代替sout.日志好处多多,可以持久化,便于分析程序运行状态,分析用户行为等. 之前的Commons Logging+Log ...

  5. 日志打印代替sout

    设置成debug模式即可,等产品交付时,改成ERROR即可 log4j.rootLogger=debug, stdout 代码检验打印只需写(等同于sout) logger.debug("h ...

  6. log4j屏蔽掉某个包下的log日志打印

    在log4j的配置文件下配置 ## Disable other log log4j.logger.com.summaryday.framework.db=OFF log4j定义了8个级别的log(除去 ...

  7. [转]slf4j + log4j原理实现及源码分析

    slf4j + log4j原理实现及源码分析 转载于:https://www.cnblogs.com/jasonzeng888/p/6051080.html

  8. log4j 压缩日志_Spring Boot 日志各种使用姿势,是时候捋清楚了!

    来自公众号:江南一点雨 1. Java 日志概览 1.1 总体概览 1.2 日志级别 1.3 综合对比 1.4 最佳实践 2. Spring Boot 日志实现 2.1 Spring Boot 日志配 ...

  9. 开发log4j配置_Spring 使用 Log4J 记录日志

    在 Spring 应用程序中使用 Log4J 的功能是非常容易的.下面的例子将带你通过简单的步骤解释 Log4J 和 Spring 之间的简单集成. 假设你已经在你的机器上安装了 Log4J,如果你还 ...

最新文章

  1. nodejs 实践:express 最佳实践(五) connect解析
  2. 偷梁换柱做自己的封装系统
  3. Win7下安装配置gVim
  4. 卢伟冰:Redmi K30会支持全网通5G 雷军:必须的!
  5. Mac 登陆Linux云服务器方法
  6. 总结一下网站注入与防范的方法
  7. 进击webpack4 (基础篇:配置 一)
  8. 使用fastcgi_cache加速你的Nginx网站
  9. Hadoop HDFS原理
  10. PCB SI9000阻抗计算引擎Web方式实现方法
  11. RBAC 模型是什么?
  12. 怎么看计算机配件型号,操作方法:如何查看CPU型号,教您如何通过CPU型号[图形]识别计算机的性能...
  13. 唯物论、辩证法和认识论
  14. c语言解除键盘锁定,笔记本键盘被锁怎么办|笔记本解除键盘锁定的四种方法
  15. oracle的mins,分钟的英文缩写,10min还是10mins!
  16. 微PE制作U盘启动盘步骤
  17. DOORS入门教程系列:基本概念介绍(一)
  18. [JS真好玩] 掘金创作者必备: 监控每天是谁取关了你?
  19. 为什么毕业后五年,你们的贫富差距越拉越大
  20. 135编辑器导出html,135编辑器教程|三步教你搞定表格样式

热门文章

  1. 去除Windows自带的微软拼音法
  2. “知识付费”三大法律问题如何处理
  3. U盘防毒,我有绝招。。。
  4. 斯皮尔曼等级相关(Spearman Rank Correlation)
  5. 漏洞复现篇——利用XSS漏洞实现多种网络钓鱼方法
  6. 翔云OCR API让你任性的“懒”-发票查验api
  7. HBase查询机制--Region定位
  8. 如何读懂DataSheet
  9. mathtype花写字母
  10. python打开mat图像文件格式_如何读取mat文件 python