如何使用log4j记录日志

第一步:在工程中加入log4j所使用的jar文件

1:项目 > 属性 :弹出项目的属性窗口

2:Java构建路径>?库>?添加外部JAR:弹出选择JAR的窗口

3:通过选择JAR的窗口,找到log4j-1.2.x.jar,并确认

4:回到项目的属性窗口,点击确定

第二步:创建log4j.properties文件

1:选择欲使用log4j的项目>?右键点击src >?新建>?其他 :弹出选择向导窗口

2:在选择向导窗口中,选择常规?> 文件?> 下一步:弹出新建文件的窗口

3:在新建文件窗口中,输入文件名log4j.properties ? 完成:创建工作结束

第三步:使用log4j记录日志信息

import org.apache.log4j.Logger;

public class Log4j {

public static void main(String[] args) {

Logger logger = Logger.getLogger(AccpTeacherLog4j.class.getName());//获取日志记录器,这个记录器将负责控制日志信息

try {

logger.debug("设置教员的编号。");//使用Logger对象的debug、info方法输出日志信息

} catch (IllegalArgumentExceptionex) {

logger.info(ex.getMessage());//使用Logger对象的debug、info方法输出日志信息

}

}

}

第四步:编写log4j.properties文件,配置日志信息

### 把日志信息输出到控制台 ###

log4j.appender.stdout=org.apache.log4j.ConsoleAppender//日志信息将写到控制台

log4j.appender.stdout.Target=System.out//信息打印到System.out上 log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %m%n//指定输出格式:显示日期和log信息

### 把日志信息输出到文件:accp.log ###

log4j.appender.file=org.apache.log4j.FileAppender//日志信息将写到文件中 log4j.appender.file.File=accp.log//指定日志输出的文件名 log4j.appender.file.layout=org.apache.log4j.PatternLayout

log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %l %m%n//指定输出格式:显示日期,日志发生位置和日志信息

### 设置优先级别、以及输出源 ###

log4j.rootLogger=debug, stdout, file//设置优先级别为debug、

日志被输出到多个输出源

注:优先级从高到低分别是ERROR、WARN、INFO、DEBUG

在此处,如果优先级别设为info,那么使用debug方法打印的日志信息将不被输出

java怎么创建log4_如何使用log4j记录日志相关推荐

  1. Spring Boot配置log4j记录日志

    转载请注明出处:Spring Boot配置log4j记录日志 我们在老的项目框架ssh,springMVC中都使用过log4j日志模块. 例如:java日志功能log4j模块的使用方法 Spring ...

  2. 使用log4j记录日志_使用log4j2免费分配日志记录

    使用log4j记录日志 介绍 最近,我正在为一个客户端工作,试图为大型精心制作的Java系统消除一些GC暂停. 经过分析后,我意识到大部分垃圾都是通过日志记录产生的! 是否有一种简单的方法来删除所有分 ...

  3. 翻译:通过Java编程创建X.509格式的数字签名证书

    本文翻译自此篇文章,如有余力可直接阅读原文. 我所需要解决的问题很简单:创建一个只需要配置很少字段的X.509协议的证书,再使用已有的CA私钥/证书进行签名,最后导出为PKCS12格式的签名证书.把这 ...

  4. Java中创建泛型数组

    Java中创建泛型数组 使用泛型时,我想很多人肯定尝试过如下的代码,去创建一个泛型数组 T[] array = new T[]; 当我们写出这样的代码时编译器会报Cannot create a gen ...

  5. 【JVM】Java对象创建的流程步骤

    · 本文摘要 · 罗列Java创建对象的各种方式: · 讲解Java对象创建的流程步骤: 一.Java创建对象的各种方式 · 1. 用关键字new,老少皆知的方法:StringBuffer sb = ...

  6. HIDL示例-JAVA服务创建-Client验证-Android10.0 HwBinder通信原理(四)

    摘要:本节主要来讲解Android10.0 JAVA层的HIDL服务创建和JAVA层的Client验证 阅读本文大约需要花费15分钟. 文章首发微信公众号:IngresGe 专注于Android系统级 ...

  7. 如何在Java中创建一个新的List

    本文翻译自:How to make a new List in Java We create a Set as: 我们创建一个Set为: Set myset = new HashSet() How d ...

  8. akka actor java_Akka:使用非默认构造函数在Scala中定义一个actor并从Java代码创建它 - java...

    Akka Scala演员必须扩展akka.actor.Actor Akka Java actor必须扩展akka.actor.UntypedActor 因此,在使用非默认构造函数定义Scala act ...

  9. 写文件 追加_总结Java中创建并写文件的5种方式

    在Java中有很多的方法可以创建文件写文件,你是否真的认真的总结过?下面小编就帮大家总结一下Java中创建文件的五种方法. 在java中有很多的方法可以创建文件写文件,你是否真的认真的总结过?下面笔者 ...

最新文章

  1. rcp异步多参数实例
  2. 【题解】CF#960 H-Santa's Gift
  3. linux session 设置时间设置,设置linux系统history相关变量,命令时间、保存history条数,多session共享history...
  4. mysql order by 自定义
  5. 空间机器人在轨任务的制导、导航与控制:综述与展望
  6. java 比较日期大小(方法之一compare to 备忘)
  7. Java学习分享---【面向对象基础】抽象
  8. 织梦建站教程,织梦安全问题解决,修改织梦URL命名规则
  9. ICommand和ITool命令操作地图
  10. java sendkeys方法_java+selenium——键盘操作+复制粘贴(keys类)
  11. xpath兄弟结点语法
  12. 台式计算机启动时 每次按f1,开机按f1的解决方法_电脑开机每次都要按F1,怎么解决...
  13. android 布局覆盖 超出一部分_谈谈移动端屏幕适配的几种方法
  14. 查询数据库表空间文件位置及扩充表空间,查询表空间容量
  15. Dell戴尔笔记本电脑G5 15 5590原装出厂Windows10系统1903恢复原厂oem系统
  16. html是div环绕文字,文字环绕一个div在HTML
  17. 【taro】taro编译h5报React Refresh runtime should not be included in the production bundle
  18. NPC问题的证明(可满足性问题、3-CNF可满足性问题、团问题、顶点覆盖问题)
  19. Kong网关插件使用
  20. 孔乙己终结者!GPT-4拿100美元自创业,还要让马斯克下岗

热门文章

  1. SQL Server 2000 sp4 简体中文版免费在线下载!
  2. 庆祝开博第一天!呵呵!
  3. python中reduce是什么意思,python中的map和reduce有什么不同
  4. win 修改jvm时间_Windows 下修改Tomcat jvm参数
  5. python安装成功第三方库但import出问题_为什么会在pyspark在RDD中调用python第三方库失败?...
  6. java 排序_Java中常见的排序算法有哪些?---选择排序
  7. 神经网络的参数迁移和共同本征态
  8. android扑克发牌动画,JS实现纸牌发牌动画
  9. STM32 进阶教程 19 - IQmath数学库的使用
  10. STM32 usb 设备实现自动重枚举