`

spring集成日志log4j

 
阅读更多

 

准备工作:

开发工具:eclipse 或其他IDE

 

spring版本3.24下载地址:

http://repo.spring.io/libs-release-local/org/springframework/spring/3.2.4.RELEASE/spring-framework-3.2.4.RELEASE-dist.zip

 

Log4j版本:log4j-1.2.16.jar

1.创建一个动态web项目,名字任意指定

2.导入spring-framework-3.2.4.RELEASE\libs下以及log4j的jar包

spring-beans-3.2.4.RELEASE.jar

spring-context-3.2.4.RELEASE.jar

spring-core-3.2.4.RELEASE.jar

log4j-1.2.16.jar

 2.在classpath(也就是src下)下创建在log4j包的log4j.properties 具体配置说明可以百度一下

log4j.rootCategory=INFO,stdout,R

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=[springLogger] %d{yyyy MMM dd HH:mm:ss,SSS} %p [%t] %C.%M(%L) %m%n
    
log4j.appender.R=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R.File=${springLogger.root}/logs/logger.log
log4j.appender.R.layout=org.apache.log4j.PatternLayout
1log4j.appender.R.layout.ConversionPattern=[springLogger] %d{yyyy MMM dd HH:mm:ss,SSS} %p [%t] %C.%M(%L) %m%n

log4j.logger.org.springframework=DEBUG
log4j.logger.org.apache.velocity=FATAL

 

 

 在web.xml中配置内容:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>springLogger</display-name>
  
  <!--如果不定义webAppRootKey参数,那么webAppRootKey就是缺省的"webapp.root"-->   
  <context-param>
    <param-name>webAppRootKey</param-name>
    <param-value>springLogger.root</param-value>
  </context-param>
  
  <!-- log4j.properties 的路径 -->
  <context-param>
    <param-name>log4jConfigLocation</param-name>
    <param-value>classpath:log4j.properties</param-value>
  </context-param>
  
  <!-- 开一条watchdog线程每60秒扫描一下配置文件的变化 -->
  <context-param>
    <param-name>log4jRefreshInterval</param-name>
    <param-value>60000</param-value>
  </context-param>
  
  <!-- log4j的日志监听-->
  <listener>
    <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
  </listener>
  
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>
	    classpath:applicationContext.xml
    </param-value>
  </context-param>
  <listener>
  <!-- 在Spring2.0中除了以前的Singleton和Prototype外又加入了三个新的web作用域,分别为request、session和global session,如果你想让你的容器里的某个bean拥有其中某种新的web作用域,除了在bean级上配置相应的scope属性,还必须在容器级做一个额外的初始化配置  -->
  <listener-class>
			org.springframework.web.context.request.RequestContextListener
  </listener-class>
  </listener>
  <listener>
    <listener-class>
	  org.springframework.web.context.ContextLoaderListener
     </listener-class>
  </listener>
  
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
  </welcome-file-list>
</web-app>

 在classpath(也就是src下)下创建  applicationContext.xml 资源文件,没有注入内容,只为测试

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"  
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   
    xmlns:p="http://www.springframework.org/schema/p"  
    xmlns:context="http://www.springframework.org/schema/context"  
    xmlns:aop="http://www.springframework.org/schema/aop"   
    xmlns:tx="http://www.springframework.org/schema/tx"  
    xsi:schemaLocation="http://www.springframework.org/schema/beans   
    http://www.springframework.org/schema/beans/spring-beans-3.2.xsd  
    http://www.springframework.org/schema/context  http://www.springframework.org/schema/context/spring-context-3.2.xsd  
    http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd  
    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd">   

</beans>

 

在项目中com.test下创建一个Main.java类文件

package com.test; 

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.util.Assert;

/** 
 * @author  HL Yang 
 * @date    创建时间:2014年11月25日 下午4:09:30  
 */

public class Main {
	
	
	public static void main(String args[]) throws InterruptedException{
		
		 ApplicationContext ctx  = new ClassPathXmlApplicationContext("classpath:applicationContext.xml");
			
		 Assert.isNull(ctx,"this ctx is not null ");
		
	}

}

 

 

 至此配置文件都已完成

需要注意的两点是:

  <!--如果不定义webAppRootKey参数,那么webAppRootKey就是缺省的"webapp.root"-->  
  <context-param>
    <param-name>webAppRootKey</param-name>
    <param-value>springLogger.root</param-value>
  </context-param>
可以与log4j.properties中log4j.appender.R.File=${springLogger.root}/logs/logger.log对应输出

 

 

 

分享到:
评论

相关推荐

    Spring MVC 框架 整合log4j

    3. **在Spring MVC中使用Log4j**:在Spring MVC的Controller或其他需要记录日志的类中,引入`org.apache.log4j.Logger`,并创建一个实例。例如: ```java import org.apache.log4j.Logger; public class ...

    Spring项目中怎么配置log4j

    最后,为了使Spring与log4j集成,我们需要在`web.xml`(对于Web应用)或`context.xml`(对于非Web应用)中引入log4j的初始化参数,确保在应用启动时加载log4j配置: ```xml &lt;param-name&gt;log4jConfigLocation ...

    spring-boot-starter-log4j2

    总之,Spring Boot Starter Log4j2使得在Spring Boot项目中集成和使用Log4j2变得简单易行。通过合理配置,我们可以实现灵活的日志管理,满足各种开发场景的需求。在实际开发中,掌握Log4j2的配置和使用,能帮助我们...

    SSM整合中的Log4j日志的配置详情

    Log4j 是一个功能强大且广泛使用的日志记录工具,特别是在 SSM(Spring、Spring MVC、Mybatis)整合项目中,合理地配置 Log4j 对项目的日志记录和输出至关重要。本文将详细介绍 SSM 整合中的 Log4j 配置详情,帮助...

    springboot+mybatis+log4j2

    本项目将Spring Boot与MyBatis集成,同时舍弃了Spring Boot默认的日志系统Logback,转而采用Log4j2来实现日志记录。下面我们将详细讨论这三个技术及其在项目中的应用。 首先,Spring Boot是由Pivotal团队提供的一个...

    spring框架和log4j日志用到的jar包

    使用Spring时,开发者还需要注意与其他Java库的兼容性,例如JDBC驱动、ORM框架(如Hibernate、MyBatis)的jar包,以及用于日志记录的log4j.jar、log4j-api.jar和log4j-core.jar。在实际项目中,这些jar包通常会被...

    spring log4j 实例

    在IT行业中,日志记录是系统开发不可或缺的一部分,它能够帮助开发者追踪程序运行状态、定位...日志记录不仅有助于日常开发,还能在生产环境中提供关键的故障排查信息,因此理解和掌握Spring与Log4j的集成至关重要。

    log4j与spring的详细配置。

    Spring框架,作为一个全面的Java企业级应用开发平台,也与Log4j深度集成,为开发者提供了方便的日志记录功能。本文将详细讲解Log4j的配置以及如何在Spring项目中使用Log4j。 **一、Log4j基础知识** 1. **Log4j组件...

    Spring 5.0集成log4j2日志管理的示例代码

    Spring 5.0集成log4j2日志管理的示例代码 本篇文章主要介绍了Spring 5.0集成log4j2日志管理的示例代码,旨在帮助读者快速掌握log4j2在Spring 5.0框架下的配置和使用。 首先,需要引入log4j 2的三个jar包:log4j-...

    若依框架使用的log4j2.16.0,修复log4j漏洞log4j2下载最新log4j2.16.0下载

    Log4j是一个广泛使用的Java日志记录框架,它允许开发者在应用程序中轻松地记录各种级别的日志信息,如DEBUG、INFO、WARN、ERROR等。在2021年底,一个重大的安全漏洞(CVE-2021-44228)被发现在Log4j2的早期版本中,...

    spring整合log4j

    Spring提供了与各种日志框架的集成,包括Log4j,使得日志配置更加方便。 整合Spring和Log4j,我们需要完成以下步骤: 1. **引入依赖**:在项目的Maven或Gradle构建文件中添加Log4j的依赖库。对于Maven,可以在`pom...

    SpringBoot框架配置log4j和log4j2的配置代码

    Log4j和Log4j2是两种广泛使用的Java日志框架,它们提供了灵活的日志配置和高性能的日志处理能力。本文将详细介绍如何在SpringBoot项目中配置Log4j和Log4j2。 ### SpringBoot与Log4j Log4j是Apache的一个开源项目,...

    spring mvc log4j

    将 Log4j 集成到 Spring MVC 应用中,可以方便地进行日志管理和分析。 1. **Log4j 概述** - 日志框架的作用:记录应用程序运行过程中的信息,如错误、警告、调试信息等,帮助开发者追踪和定位问题。 - Log4j 特点...

    springmvc5+hibernate5+junit4+log4j2整合实例

    在本整合实例中,我们将探讨如何将Spring MVC 5、Hibernate 5、JUnit 4 和 Log4j2 集成在一起,以构建一个高效、可测试和日志记录完善的Java Web应用程序。以下是对这些技术及其整合过程的详细说明: **Spring MVC ...

    Spring5加入Log4j日志所需的jar包

    总结起来,Spring 5集成Log4j2需要的jar包包括log4j-core、log4j-api、slf4j-api和log4j-slf4j-impl,同时需要一个配置文件来定义日志的行为。通过SLF4J接口,开发者可以方便地在不修改代码的情况下切换不同的日志...

    Spring版本Log4J的Demo

    在Spring框架中集成和使用Log4J是一项常见的任务,它能帮助我们记录应用程序的运行日志,便于调试、性能分析和问题排查。本项目"SpringLog4JDemo"是一个基于Eclipse的实战示例,旨在教会开发者如何在Spring环境中...

    (源码)基于Spring Boot和Log4j2的TruthBean日志系统.zip

    # 基于Spring Boot和Log4j2的TruthBean日志系统 ## 项目简介 TruthBean日志系统是一个基于Spring Boot和Log4j2框架的高性能日志管理工具。它提供了丰富的日志级别和灵活的配置选项,适用于各种Java应用程序的日志...

    springmvc log4j2 logback 注解 jackson 日志脱敏实现源码

    本资源包含的是关于`SpringMVC`、`Log4j2`、`Logback`以及`Jackson`的日志脱敏实现源码,提供了多种实现方式,旨在帮助开发者在保障信息安全的同时,充分利用日志进行系统分析。 1. **基于正则表达式的日志脱敏实现...

    spring+springMVC+mybatis+log4j框架整合

    本文将深入探讨这些框架的集成以及log4j日志系统的应用。 首先,Spring框架作为核心,它提供了依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)等功能,有助于简化应用的...

    Log4j2、Fastjson、Log4j的BurpSuite插件亲测有效

    Log4j是Apache的一个开源项目,主要用于日志记录,提供了灵活的日志配置,允许开发者根据需求调整日志输出的级别和格式。Log4j2作为Log4j的升级版本,它在性能、可配置性和可扩展性上有了显著提升,同时也修复了Log4...

Global site tag (gtag.js) - Google Analytics