SpringMVC + Hibernate + Spring集成Log4j日志插件

本文介绍如何在项目中配置Log4j日志框架,包括在web.xml中配置日志参数,创建log4j.properties文件定义日志级别、输出目标等,并通过示例展示如何在代码中使用Log4j记录日志。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、首先在web.xml中配置如下配置

<!-- 日志Log4j,注意日志配置一定要在 ContextLoaderListener之前-->
    <context-param>
        <param-name>log4jConfigLocation</param-name>
        <param-value>classpath:log4j.properties</param-value>
    </context-param>
    
    <!-- log4j每隔60秒扫描 一下配置文件的变化 ,变化了之后不用重启服务-->  
    <context-param>
        <param-name>log4jRefreshInterval</param-name>
        <param-value>6000</param-value>
    </context-param>
    <context-param>
        <param-name>webAppRootKey</param-name>
        <!-- micro_mall为项目名称 -->
        <param-value>micro_mall.root</param-value>
    </context-param>
    <listener>
        <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
    </listener>
    

2、添加日志配置文件log4j.properties

log4j.rootLogger=DEBUG,file,stdout

### 把日志信息输出到控制台 ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.Encoding=UTF-8
log4j.appender.stdout.layout.ConversionPattern=[>>>>>>>>>>>>>>>] %d{yyyy-MM-dd HH\:mm\:ss} [%c]-[%p] - %m %n
log4j.appender.stdout.Target=System.out

### 把日志信息输出到滚动文件(按文件大小进行滚动)###
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=${micro_mall.root}/WEB-INF/log.log
#追加方式
#追加文件内容,可选参数Append配置是否在原文件内容的基础上追加日志。如果为false,Logger 初始化时会先清掉文件内容,也就是说每次重启程序,原来的日志会丢失。如果为true,日志文件会越来越大。默认为true
log4j.appender.file.Append=true
#设置字符编码
log4j.appender.file.Encoding=UTF-8
#日志最大容量,超过容量会重新生成一个新的日志
log4j.appender.file.MaxFileSize=100KB
#最大日志个数,超过会自动删除最旧的一个日志
log4j.appender.file.MaxBackupIndex=30
#日志布局
log4j.appender.file.layout=org.apache.log4j.PatternLayout
#日志输出格式
log4j.appender.file.layout.ConversionPattern=[>>>>>>>>>>] %d{yyyy-MM-dd HH\:mm\:ss} [%c]-[%p] - %m %n


###########下面是按日期进行日志文件的滚动追加,需要时直接把配置注释掉即可使用########

### 把日志信息输出到滚动文件(按日期进行滚动)###
#输出到滚动文件
#log4j.appender.file=org.apache.log4j.Daily_RollingFileAppender
#滚动文件名
#log4j.appender.file.File=${micro_mall.root}/WEB-INF/log.log
#追加方式
#追加文件内容,可选参数Append配置是否在原文件内容的基础上追加日志。如果为false,Logger 初始化时会先清掉文件内容,也就是说每次重启程序,原来的日志会丢失。如果为true,日志文件会越来越大。默认为true
#log4j.appender.file.Append=true
#滚动日期格式
#log4j.appender.Daily_Rolling.DatePattern=.yyyy-MM-dd
#日志布局
#log4j.appender.file.layout=org.apache.log4j.PatternLayout
#日志输出格式
#log4j.appender.file.layout.ConversionPattern=[>>>>>>>>>>] %d{yyyy-MM-dd HH\:mm\:ss} [%c]-[%p] - %m %n


#更详细配置方式请上百度...........

 

3、日志使用方式

@Controller
@RequestMapping("/login")
public class LoginController{

    private static final Log log = LogFactory.getLog(LoginController.class);
    
    @RequestMapping("/index.do")
    public void login(){
        log.debug("管理员登录!");
    }
}

 

转载于:https://my.oschina.net/u/1766298/blog/749714

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值