Java实战03之idea pringboot 整合log4j2日志,可以多日志文件

目录

前言:

一、先添加pom.xml 依赖

二、log4j2.xml 配置

三、application.yml

四、加几条测试日志

五、采用注解@log4j2

1、log4j2.xml 配置

2、测试类​编辑

启动项目,

​编辑

六、打印多个不同日志文件日志

1、log4j2.xml 配置

2、测试类


前言:

接着上面实战02讲,连上数据库以后肯定是希望可打印日志的.说明一下常用的日志方法

logbak其实可以说是 Log4J 的进化版,解决了Log4j无法用占位符的问题。

log4j2是重写之后性能比较好的。

slf4j 比较方便,由于他是抽象层,不能单独使用,需要配合其他日志的使用,这样就可以很好的集成其他日志,不用频繁地去切换日志的配置。

log4j2 应用是最广泛的,所以我们也采用它。

一、先添加pom.xml 依赖



    org.springframework.boot
    spring-boot-starter
    
        
            org.springframework.boot
            spring-boot-starter-logging
        
    




    org.apache.logging.log4j
    log4j-core
    2.19.0


    org.apache.logging.log4j
    log4j-api
    2.19.0


    org.apache.logging.log4j
    log4j-slf4j-impl
    2.19.0

二、log4j2.xml 配置



    
        
        logs/server
        
        all-logger
    
    
        
        
            
            
        

        
        
        
            
            
                
                
                
                
            
            
            
                
                
                    
                    
                
            
        

    

    
        
        
        
        
        
            
            
        

        
        
            
            
        

        
        
            
            
        

    

三、application.yml

 
server:
  port: 8099
  servlet:
    context-path: /demo
 
# 多数据源
spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://XXXXX?allowMultiQueries=true&useUnicode=true&characterEncoding=utf8&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&failOverReadOnly=false
    username: XXXXX
    password: XXXXX
 
mybatis:
  mapper-locations: classpath:/mapper/*.xml
  configuration:
    map-underscore-to-camel-case: false
    log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl
 
logging:
  config: classpath:log4j2.xml
  level:
    com.example.demo.**.mapper: debug

四、加几条测试日志

StudentinfoController 加几条日志

Java实战03之idea pringboot 整合log4j2日志,可以多日志文件_第1张图片

最后项目的完整结构如下

Java实战03之idea pringboot 整合log4j2日志,可以多日志文件_第2张图片

启动项目,http://localhost:8099/demo/studentinfoController/selectStudent

 控制台日志

 文件日志

这里有一个问题,可以看到 打印的sql 只有语句,没有查询结果,如果想要打印结果,可以改成这样



   
   

这个时候你就会看到打印这样的结果

控制台

Java实战03之idea pringboot 整合log4j2日志,可以多日志文件_第3张图片

 文件

 不过不建议打印结果,因为往往我们查询结果会很大,所以不打印为好。

五、采用注解@log4j2

1、log4j2.xml 配置


        
        
            
            
                
                
                
                
            
            
            
                
                
                    
                    
                
            
        




        
            
            
                
                
                
                
            
            
            
                
                
                    
                    
                
            
        

 
        
        
        
        
        
            
        

        
        
            
            
        

       
        
        
            
            
        


        
        
        
            
            
        

2、测试类
Java实战03之idea pringboot 整合log4j2日志,可以多日志文件_第4张图片

启动项目,

控制台:

service 日志文件

 sql 日志文件

Java实战03之idea pringboot 整合log4j2日志,可以多日志文件_第5张图片

六、打印多个不同日志文件日志

首先注解的形式就注定了单个注解文件只能打印到一个文件里面,mybatis 的特殊日志除外,如果想要一个类里面打印日志到不同文件里面,就可以采用下面这种方法

1、log4j2.xml 配置



    
        
        logs/server

    

    
        
        
            
            
        

        
        
            
            
                
                
                
                
            
            
            
                
                
                    
                    
                
            
        

        
        
            
            
                
                
                
                
            
            
            
                
                
                    
                    
                
            
        

        
        
        
            
            
                
                
                
                
            
            
            
                
                
                    
                    
                
            
        

    

    
        
        
        
        
        
            
        

        
        
            
            
        

        
            
            
        

        
        
            
            
            
        

        
        
            
            
            
        


    

2、测试类

Java实战03之idea pringboot 整合log4j2日志,可以多日志文件_第6张图片

启动项目。

控制台:

 task文件

service文件

 

 sql文件

 这样就很完美了。

如果还是想用注解,那就只能两种结合使用了,注解+logger.getname

Java实战03之idea pringboot 整合log4j2日志,可以多日志文件_第7张图片

控制台

Java实战03之idea pringboot 整合log4j2日志,可以多日志文件_第8张图片

 service

 sql

 task

 
以上就是最完整的 idea +Maven+springboot+mybatis+log4j2 的结合使用了。

如果觉得对你有帮助的话欢迎点赞关注哦!
 

你可能感兴趣的:(java-实战应用,log4j,java,intellij-idea)