转自:Log4j的应用实例
在Log4J使用笔记中没有怎么写实例,那么在这篇中我将Log4j的一个完整应用实例写出。
在Log4J使用笔记中我们已经知道同一个日志信息可以同时输出到多个输出目的地。那么在下面的例子中我将演示将日志信息同时输出到控制台,文件和数据库中。首先创建一张表,如下:
create table log4j
(
logId int not null auto_increment,--流水号
createDate varchar(45) default null,--日志生成时间
thread varchar(45) default null,--当前线程
level varchar(45) default null,--当前日志的级别
class varchar(45) default null,--生成日志的类
message varchar(245) default null,--日志具体信息
primary key(logId)
)
编写配置文件myLog4j.properties
最后测试程序如下:
控制台:
数据库:
文件:
我们已经看到出现Sample.log文件,该文件我们在配置中指定,当然你也可以修改其它地方,另外Log4j的配置文件也放在项目根目录下。
同时当我们多运行几次该程序时,Sample.log超过1KB时就会将该文件自动改名,同时再将日志记录到新的Sample.log文件中,如下:
在Log4J使用笔记中我们已经知道同一个日志信息可以同时输出到多个输出目的地。那么在下面的例子中我将演示将日志信息同时输出到控制台,文件和数据库中。首先创建一张表,如下:
create table log4j
(
logId int not null auto_increment,--流水号
createDate varchar(45) default null,--日志生成时间
thread varchar(45) default null,--当前线程
level varchar(45) default null,--当前日志的级别
class varchar(45) default null,--生成日志的类
message varchar(245) default null,--日志具体信息
primary key(logId)
)
#定义3个输出端
log4j.rootCategory=INFO,A1,A2,A3
#定义A1输出到控制器
log4j.appender.A1=org.apache.log4j.ConsoleAppender
#定义A1的布局模式为PaternLayout
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
# 定义A1的输出格式
log4j.appender.A1.layout.ConversionPattern=%4p [%t] (%F:%L) - %m%n
#定义A2输出到文件
log4j.appender.A2=org.apache.log4j.RollingFileAppender
#定义A2输出到哪个文件
log4j.appender.A2.File=./Sample.log
#定义A2输出文件的最大长度
log4j.appender.A2.MaxFileSize = 1KB
#定义A2的备份文件数
log4j.appender.A2.MaxBackupIndex = 3
#定义A2的布局模式为PatternLayout
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
#定义A2的输出模式
log4j.appender.A2.layout.ConversionPattern=%d{yyyy-MM-dd hh:mm:ss}:%p %t %c - %m%n
#定义A3输出到数据库
log4j.appender.A3=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.A3.URL=jdbc:mysql://localhost:3306/study
log4j.appender.A3.driver=com.mysql.jdbc.Driver
log4j.appender.A3.user=root
log4j.appender.A3.password=root
#定义A3的布局和执行的SQL语句
log4j.appender.A3.layout=org.apache.log4j.PatternLayout
log4j.appender.A3.layout.ConversionPattern=INSERT INTO log4j(createDate,thread,level,class,message) values(\'%d\',\'%t\',\'%-5p\',\'%c\',\'%m\')
log4j.rootCategory=INFO,A1,A2,A3
#定义A1输出到控制器
log4j.appender.A1=org.apache.log4j.ConsoleAppender
#定义A1的布局模式为PaternLayout
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
# 定义A1的输出格式
log4j.appender.A1.layout.ConversionPattern=%4p [%t] (%F:%L) - %m%n
#定义A2输出到文件
log4j.appender.A2=org.apache.log4j.RollingFileAppender
#定义A2输出到哪个文件
log4j.appender.A2.File=./Sample.log
#定义A2输出文件的最大长度
log4j.appender.A2.MaxFileSize = 1KB
#定义A2的备份文件数
log4j.appender.A2.MaxBackupIndex = 3
#定义A2的布局模式为PatternLayout
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
#定义A2的输出模式
log4j.appender.A2.layout.ConversionPattern=%d{yyyy-MM-dd hh:mm:ss}:%p %t %c - %m%n
#定义A3输出到数据库
log4j.appender.A3=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.A3.URL=jdbc:mysql://localhost:3306/study
log4j.appender.A3.driver=com.mysql.jdbc.Driver
log4j.appender.A3.user=root
log4j.appender.A3.password=root
#定义A3的布局和执行的SQL语句
log4j.appender.A3.layout=org.apache.log4j.PatternLayout
log4j.appender.A3.layout.ConversionPattern=INSERT INTO log4j(createDate,thread,level,class,message) values(\'%d\',\'%t\',\'%-5p\',\'%c\',\'%m\')
最后测试程序如下:
public static void sample()
{
Logger logger = Logger.getLogger(Log4jTest.class);
PropertyConfigurator.configure("myLog4j.properties");
logger.debug("Here is DEBUG messgae");
logger.info("Here is INFO message");
logger.warn("Here is WARN message");
logger.error("Here is ERROR message");
logger.fatal("Here is FATAL message");
}
这样当我们运行该程序的时候会同时将上述日志信息转入到三个地方:{
Logger logger = Logger.getLogger(Log4jTest.class);
PropertyConfigurator.configure("myLog4j.properties");
logger.debug("Here is DEBUG messgae");
logger.info("Here is INFO message");
logger.warn("Here is WARN message");
logger.error("Here is ERROR message");
logger.fatal("Here is FATAL message");
}
控制台:
数据库:
文件:
我们已经看到出现Sample.log文件,该文件我们在配置中指定,当然你也可以修改其它地方,另外Log4j的配置文件也放在项目根目录下。
同时当我们多运行几次该程序时,Sample.log超过1KB时就会将该文件自动改名,同时再将日志记录到新的Sample.log文件中,如下:
相关推荐
**标题:“log4j 实例”** 在Java开发中,日志记录是不可或缺的一部分,而Log4j作为一款广泛使用的开源日志框架,为开发者提供了强大的日志处理能力。本实例将深入探讨如何在实际项目中应用Log4j,帮助你理解和掌握...
本实例结合Spring和Log4j,将为你提供一个实用的日志解决方案。 首先,我们要理解Spring是如何集成Log4j的。Spring框架通过Apache Commons Logging接口来提供日志服务,而Log4j可以作为这个接口的实现。因此,我们...
本实例将深入探讨Log4j的基本使用方法和配置。 一、Log4j的核心组件 1. Logger:日志记录器,它是日志输出的起点,可以根据不同的类或模块创建多个Logger实例,每个实例具有不同的日志级别。 2. Level:日志级别,...
在标题“log4j实例,log4j-1.2.9.jar”中,我们看到的是Log4j的一个具体版本——1.2.9。这个版本虽然相对较旧,但它仍然是许多现有项目的基础,因为它稳定且功能齐全。 **1. Log4j的核心组件** Log4j由三个主要...
这个“log4j实例java工程.zip”压缩包包含了在一个基于Eclipse、Maven、Spring和SpringMVC的项目中使用Log4j的具体示例。 首先,Eclipse是Java开发常用的集成开发环境(IDE),它提供了一整套工具来帮助编写、调试...
Log4j是Apache组织开发的一款Java日志记录框架,它为Java应用程序提供了强大的日志处理能力。在软件开发中,日志记录对于调试、性能分析、问题排查等环节至关重要。Log4j通过灵活的配置,使得开发者能够控制日志信息...
**Log4j简介** ..."log4j实例.rar"这个压缩包应该包含了具体的Log4j使用示例,可以帮助初学者快速上手和理解Log4j的用法。在实践中,不断学习和掌握Log4j的高级特性,将有助于提升开发效率和维护质量。
本文将围绕"log4j实例.zip"这一主题,深入探讨如何在Eclipse集成环境中,结合Spring、SpringMVC和maven,有效利用Log4j进行日志管理。 一、Log4j简介 Log4j是一个为Java应用程序提供日志服务的框架,它提供了灵活的...
log4j实例加详细配置说明加jar包
本篇文章将深入探讨Log4j的多个简单实例,帮助你理解和掌握其基本用法。 首先,Log4j由三个主要组件构成:配置器(Configuration)、日志器(Logger)和布局(Layout)。配置器定义了日志信息的输出格式和位置;...
首先,Log4j主要由三部分组成:配置文件(log4j.properties或log4j.xml)、日志记录器(Logger)和日志输出格式(Appender)。配置文件定义了日志的级别、输出目的地和格式。日志记录器是用于生成日志的对象,而...
在本整合实例中,我们将探讨如何将Spring MVC 5、Hibernate 5、JUnit 4 和 Log4j2 集成在一起,以构建一个高效、可测试和日志记录完善的Java Web应用程序。以下是对这些技术及其整合过程的详细说明: **Spring MVC ...
### Log4j 使用实例详解 #### 一、Log4j简介 Log4j 是一个开源的日志记录框架,由 Apache 软件基金会提供。它允许开发者根据需求配置日志等级,并灵活选择日志信息的输出方式。Log4j 的核心组件包括 Logger、...
SSH框架整合实战项目,log4j完整的配置文件(log4j.perproties,log4j.xml),日志可输出到控制台、本地文件、数据库,提供多种配置方法,项目可直接运行,SQL语句在项目中。该项目对学习spring,struts2,hibernate,log...
"Log4j(实例代码+文档)" 指的是一个资源包,其中包含了关于Log4j的实例代码和相关文档。Log4j是Java编程语言中的一个开源日志记录框架,由Apache软件基金会开发。它允许程序员以灵活的方式控制程序的日志输出,提供...
很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很实用很...
描述提到的是一个包含控制台输出、文件输出、数据库输出的Log4j实例,这表明这是一个完整的示例工程,演示了Log4j如何在不同的场景下工作,如打印到控制台、写入文件以及存储到数据库。 **Log4j核心概念** 1. **...
本文将详细探讨如何通过SLF4J接口来使用Log4j进行日志记录,并展示一个测试代码实例。 **SLF4J简介** SLF4J是一个抽象层,为各种日志框架提供了统一的API,如Logback、Log4j等。它的主要优点在于可以让你在不修改...
**Log4j配置实例** Log4j是一款广泛使用的Java日志框架,它为应用程序提供了灵活的日志记录功能。本文将深入探讨Log4j的配置及其实际应用,帮助开发者更好地理解和利用这一工具。 **1. Log4j概述** Log4j是由...