SpringBoot整合Log4j

博客介绍了Spring Boot集成Log4j的过程。首先导入Log4j属性文件,接着在xml中添加依赖,去除Spring Boot自带的logging并添加Log4j,同时要注意版本问题,还需对配置去重。最后在UserContorller中进行测试,可去相应文件查看log文件。

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

导入Log4j属性文件

log4j.properties

log4j.rootLogger=INFO,Console,File
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.Target=System.out
log4j.appender.Console.layout = org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=[%p] [%d{yyyy-MM-dd HH\:mm\:ss}][%c - %L]%m%n
 
log4j.appender.File = org.apache.log4j.RollingFileAppender
# 以下是log的存放路径,根据自己的配置
log4j.appender.File.File=C:/Users/lxk/Desktop/test/logs/info/info.log 
log4j.appender.File.MaxFileSize = 10MB
 
log4j.appender.File.Threshold = ALL
log4j.appender.File.layout=org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern =[%p] [%d{yyyy-MM-dd HH\:mm\:ss}][%c - %L]%m%n

导入依赖

在xml中添加依赖
去除springboot的logging,添加log4j,因为自带的logging不启效果
springboot下的Log4j的版本最新1.3.8,如果你的springboot的parent版本过高,那在在添加log4j自己版本

原来的logging

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-logging</artifactId>
      <version>1.5.9.RELEASE</version>
    </dependency>

修改后的Log4j

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-log4j</artifactId>
      <version>1.3.8.RELEASE</version>
    </dependency>

但是这样修改也还是有问题的,会报错,因为自身带的有logging,因此这里我们需要去重。以下就是最终的配置

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter</artifactId>
      <exclusions>
        <exclusion>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-logging</artifactId>
        </exclusion>
      </exclusions>
    </dependency>

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-log4j</artifactId>
      <version>1.3.7.RELEASE</version>
    </dependency>

测试

任在UserContorller中测试

@Controller
@RequestMapping("/user")
public class UserController {
    @Autowired
    private UserService userService;
    Logger logger = Logger.getLogger(UserController.class);
    @RequestMapping("/register")
    @ResponseBody
    public String register(String username,String password){
        userService.register(username,password);
        logger.info("username"+username+"password"+password);
        return "Success";
    }
 }

结果

去相应的文件下查看log文件。

# 以下是log的存放路径,根据自己的配置
log4j.appender.File.File=C:/Users/lxk/Desktop/test/logs/info/info.log 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值