- 浏览: 375149 次
- 来自: 北京
文章分类
- 全部博客 (237)
- XML (6)
- JavaSE (39)
- Junit (1)
- Maven (10)
- JavaScript (12)
- JavaEE (16)
- HTML5 (10)
- java多线程 (8)
- Hibernate (30)
- Java反射 (3)
- Spring (11)
- Struts (1)
- svn (2)
- linux (12)
- 代码实例 (1)
- 设计模式 (1)
- UML (1)
- javassist (1)
- Oracle (3)
- Hibernate异常 (9)
- DWR (6)
- Java泛型 (2)
- SpringMVC (11)
- Dbunit (3)
- github (2)
- Algorithm (1)
- zTree (1)
- jquery (7)
- freemarker (4)
- mysql (5)
- ffmpeg (1)
- 编码 (1)
- lucene (15)
- hadoop (1)
- JVM (1)
- Regular Expressions (5)
- myeclipse (1)
- 爬虫 (7)
- 加密 (3)
- WebService (2)
- Socket (2)
- Windows (1)
最新评论
-
wxpsjm:
好直接
HV000030: No validator could be found for type: java.lang.Integer. -
wxhhbdx:
学习了,对新手来说很不错的教程。
SpringMVC入门 (二) 数值传递 -
xgcai:
正好在学dwr
DWR入门 (二)用户实例
首先要下载官网的jar包以及说明文档文件。
文件里包含了log4j.properties,该文件用于配置日志信息,级别操作。
http://archive.apache.org/dist/logging/log4j/1.2.16/
下面是log4j的helloworld实例。
1. 导入log4j.jar包。
2. 创建HelloLog4j.java
直接运行以上代码, 会有以下console信息:
hello log4j
log4j:WARN No appenders could be found for logger (com.lj.log4j.HelloLog4J).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
这是因为我们没有导入所谓的'appender', 也就是log4j.properties文件。
因此我们需要在classpath路径下创建一个log4j.properties文件。
3. 创建log4j.properties:
再次运行HelloLog4j,我们就会看到不同的Console信息:
hello log4j
[main] DEBUG com.lj.log4j.HelloLog4J - In the main method
[main] INFO com.lj.log4j.HelloLog4J - This is info message
[main] ERROR com.lj.log4j.HelloLog4J - This is error message
这里就输出了我们所期待的信息。
[main]表示我们是在main函数当中运行的这个代码.
DEBUG, INFO, ERROR表示不同的log级别。
com.lj.log4j.HelloLog4J是包+类名信息。
最后输出log信息。
4. 设置log级别
在上面的例子中,我们所设置的log输出级别是debug->log4j.rootLogger=debug,appender1
这里我们可以修改log级别,例如设置为info,可以看到以下的输出内容:
hello log4j
[main] INFO com.lj.log4j.HelloLog4J - This is info message
[main] ERROR com.lj.log4j.HelloLog4J - This is error message
也就是说,debug信息就没了。
原因是log4j的信息输出是要根据级别的, debug和info的级别是debug<info.
而只有高于所设定的级别的信息才会被输出。
因此这里的debug就会被屏蔽掉了。
假如我们将输出级别设置为error, 那么这次就只有error信息会被输出了
[main] ERROR com.lj.log4j.HelloLog4J - This is error message
原因是info的级别要小于我们设定的error级别。
总体来说log4j的级别顺序如下:
DEBUG < INFO < WARN < ERROR < FATAL
简而言之, 当设定为debug的时候,所有log4j的信息都会被输出。
而设定为fatal时, 就只有logger.fatal里面的信息会被输出。
文件里包含了log4j.properties,该文件用于配置日志信息,级别操作。
http://archive.apache.org/dist/logging/log4j/1.2.16/
下面是log4j的helloworld实例。
1. 导入log4j.jar包。
2. 创建HelloLog4j.java
public class HelloLog4J { private static Logger logger=Logger.getLogger(HelloLog4J.class); public static void main(String[] args) { System.out.println("hello log4j"); logger.debug("In the main method"); logger.info("This is info message"); logger.error("This is error message"); } }
直接运行以上代码, 会有以下console信息:
hello log4j
log4j:WARN No appenders could be found for logger (com.lj.log4j.HelloLog4J).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
这是因为我们没有导入所谓的'appender', 也就是log4j.properties文件。
因此我们需要在classpath路径下创建一个log4j.properties文件。
3. 创建log4j.properties:
#set log level to debug level. log4j.rootLogger=debug,appender1 #set the log appender of the information. In this case, it is set as Console. log4j.appender.appender1=org.apache.log4j.ConsoleAppender #set the layout of the log informaton log4j.appender.appender1.layout=org.apache.log4j.TTCCLayout
再次运行HelloLog4j,我们就会看到不同的Console信息:
hello log4j
[main] DEBUG com.lj.log4j.HelloLog4J - In the main method
[main] INFO com.lj.log4j.HelloLog4J - This is info message
[main] ERROR com.lj.log4j.HelloLog4J - This is error message
这里就输出了我们所期待的信息。
[main]表示我们是在main函数当中运行的这个代码.
DEBUG, INFO, ERROR表示不同的log级别。
com.lj.log4j.HelloLog4J是包+类名信息。
最后输出log信息。
4. 设置log级别
在上面的例子中,我们所设置的log输出级别是debug->log4j.rootLogger=debug,appender1
这里我们可以修改log级别,例如设置为info,可以看到以下的输出内容:
hello log4j
[main] INFO com.lj.log4j.HelloLog4J - This is info message
[main] ERROR com.lj.log4j.HelloLog4J - This is error message
也就是说,debug信息就没了。
原因是log4j的信息输出是要根据级别的, debug和info的级别是debug<info.
而只有高于所设定的级别的信息才会被输出。
因此这里的debug就会被屏蔽掉了。
假如我们将输出级别设置为error, 那么这次就只有error信息会被输出了
[main] ERROR com.lj.log4j.HelloLog4J - This is error message
原因是info的级别要小于我们设定的error级别。
总体来说log4j的级别顺序如下:
DEBUG < INFO < WARN < ERROR < FATAL
简而言之, 当设定为debug的时候,所有log4j的信息都会被输出。
而设定为fatal时, 就只有logger.fatal里面的信息会被输出。
发表评论
-
webservice获取访问服务的ip地址
2014-08-11 16:02 19621. 首先注入javax.xml.ws.WebServiceC ... -
java.lang.IllegalStateException: ServletConfig has not been initialized
2014-08-06 13:04 2988java.lang.IllegalStateException ... -
Character reference "�" is an invalid XML character.
2014-07-10 18:35 2125org.xml.sax.SAXParseException: ... -
jquery.validate.js的错误信息显示位置
2014-03-04 14:04 2247问题描述: 如图所示, 这里的代码是: <tr ... -
IE下的li:hover问题解决
2014-02-19 22:26 887当在css中设定li:hover{cursor:pointer ... -
HV000030: No validator could be found for type: java.lang.Integer.
2014-01-11 12:58 6764http://stackoverflow.com/questi ... -
图片压缩
2014-01-05 22:42 0package org.konghao.basic.util; ... -
[转]Access restriction:The type JPEGCodec is not accessible due to restriction on
2014-01-05 22:23 879Access restriction:The type JPE ... -
uploadify上传文件实例
2014-01-05 12:35 1299以Maven和SpringMVC为例。 1. 上官网http ... -
jsp include page <jsp:param value="val" name="n"/>
2013-12-18 22:09 1134<jsp:include page="/jsp ... -
log4j 关于rootLogger以及一些问题
2013-12-17 12:56 1830今天遇到的一些问题。 package com.lj.b ... -
dbunit错误:non-uppercase input column:xx in ColumnNameToIndexes cache map
2013-12-14 18:06 3281testLoad(com.lj.core.dao.Test ... -
log4j 入门实例 (三) 输出布局(layout)
2013-12-12 20:46 872log4j提供了以下几种layou ... -
log4j 入门实例 (二) 输出到文件以及网页
2013-12-12 17:41 1036这里先讲如何将log4j的日志信息输出到文本文件。 1. ... -
JPA初步学习
2013-10-29 17:33 0这两天在写一个ORM方法。 实现类对象和XML文件的mappi ... -
使用jackson生成json对象的实例
2013-10-24 11:25 3737这里写了一个将json和Java的Object对象进行互相转换 ... -
Servlet从硬盘读取图片并传送到前台
2013-10-21 20:39 1491public void doGet(HttpServletR ...
相关推荐
本文将深入探讨Log4j的基础知识、配置和使用实例,帮助初学者快速入门。 首先,理解Log4j的核心概念至关重要。Log4j主要由三部分组成:Logger(日志器)、Appender(输出端)和Layout(布局)。Logger用于记录日志...
创建 Logger 实例是使用 Log4j 的第一步。通过调用 `Logger.getLogger(String name)` 方法来创建一个 Logger 对象。通常我们会传入当前类的名字作为参数,以便于日志管理。 ```java import org.apache.log4j.Logger;...
Log4j是Apache组织开发的一个强大的、灵活的日志记录框架,它允许我们控制日志信息的输出级别、格式以及输出位置。本篇文章将深入探讨Log4j的多个简单实例,帮助你理解和掌握其基本用法。 首先,Log4j由三个主要...
在Java代码中,我们首先需要引入Log4j的API,然后创建一个`Logger`实例。例如: ```java import org.apache.log4j.Logger; public class MyClass { private static final Logger logger = Logger.getLogger...
Log4j只需要引入一个JAR包,即log4j.jar,而Log4j2则需要引入两个核心JAR包,即log4j-core.jar和log4j-api.jar。大家可以发现,Log4j和Log4j2的包路径是不同的,Apache为了区分,包路径都更新了。 文件渲染 Log4j...
### Log4j从入门到详解知识点汇总 #### 1. Log4j简介 Log4j是Apache的一个开源项目,主要用于实现日志记录功能。通过使用Log4j,开发者可以非常方便地控制日志信息的输出目的地(如控制台、文件等)、每条日志的...
Log4j是一个广泛使用的Java日志记录框架,它允许开发者在应用程序中轻松地记录各种级别的日志信息,如DEBUG、INFO、WARN、ERROR等。在2021年底,一个重大的安全漏洞(CVE-2021-44228)被发现在Log4j2的早期版本中,...
- "log4j从入门到详解.pdf":这是一份完整的Log4j教程,从基础概念到高级用法,覆盖了Log4j的各个方面,适合初学者和进阶学习者。 - "log4j.rar": 这可能是Log4j的源码或者其他相关资源的压缩包,解压后可能包含更多...
在压缩包文件“mytest”中,可能包含了一个简单的Log4j应用实例,你可以通过查看源代码来实践上述知识点。学习和熟练运用Log4j,不仅可以提升代码的可读性和可维护性,还能在问题排查时提供关键信息,是每个Java...
### Log4j 入门与详解 #### 一、Log4j简介 Log4j是Apache组织提供的一个开源日志框架,它可以帮助开发者轻松地在应用程序中实现日志记录功能。传统的日志记录方式通常是在代码中直接使用`System.out.println()`等...
本实例结合Spring和Log4j,将为你提供一个实用的日志解决方案。 首先,我们要理解Spring是如何集成Log4j的。Spring框架通过Apache Commons Logging接口来提供日志服务,而Log4j可以作为这个接口的实现。因此,我们...
针对Log4j 2 远程代码执行漏洞,需要用到的升级资源包,适用于maven资源库,包括log4j,log4j-core,log4j-api,log4j-1.2-api,log4j-jpa等全套2.15.0 maven资源库jar包。如果是maven本地仓库使用,需要将zip包解压...
Log4j是一款广泛应用于Java平台的日志记录框架,它提供了灵活且强大的日志记录功能,使得开发者能够方便地控制日志信息的输出级别、格式以及目的地。本实例将深入探讨Log4j的基本使用方法和配置。 一、Log4j的核心...
### Log4j从入门到精通知识点详述 #### 1. Log4j简介 Log4j 是 Apache 软件基金会旗下的一个开源项目,它是一个用于 Java 的日志记录工具。通过使用 Log4j,开发者可以轻松地在 Java 应用程序中实现日志功能,不仅...
本文将详细探讨如何通过SLF4J接口来使用Log4j进行日志记录,并展示一个测试代码实例。 **SLF4J简介** SLF4J是一个抽象层,为各种日志框架提供了统一的API,如Logback、Log4j等。它的主要优点在于可以让你在不修改...
这个"log4j使用实例.zip"压缩包包含了关于如何在Java项目中配置和使用Log4j的示例代码,非常适合Java后端初学者学习。 首先,Log4j的核心组件包括Logger、Appender和Layout。Logger是日志信息的生产者,负责生成...
### Log4j2简介 Log4j2是Apache软件基金会推出的日志框架,它是Log4j 1.x的重构版本,旨在提供更为高效且灵活的日志解决方案。...对于寻求高性能日志解决方案的应用开发者来说,Log4j2无疑是一个值得考虑的选择。