当前位置:首页 > Java技术 > springBoot2+Mybatis+log4j2日志配置

springBoot2+Mybatis+log4j2日志配置

2022年09月17日 11:41:25Java技术12

采用springBoot2+Mybatis+log4j2将日志信息分为info、error、sql三个文件夹打印出来,日志结构如图

springBoot2+Mybatis+log4j2日志配置 _ JavaClub全栈架构师技术笔记

1.POM文件依赖

<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.0.1</version>
        </dependency>

        <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-log4j2</artifactId>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

2.log4j2.xml配置

<?xml version="1.0" encoding="utf-8"?>

<!--logger leves trace<debug<info<warn<error<fatal -->
<configuration status="off"> 
  <appenders> 
    <Console name="console" target="SYSTEM_OUT"> 
      <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %l - %m%n"/> 
    </Console>  
    <RollingFile name="info_appender" fileName="logs/log.log" filePattern="logs/%d{yyyy-MM-dd}/log_%i.log.gz">
      <Filters> 
        <ThresholdFilter level="info"/>  
        <ThresholdFilter level="error" onMatch="DENY" onMismatch="NEUTRAL"/> 
      </Filters>  
      <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %l - %m%n"/>  
      <Policies> 
        <TimeBasedTriggeringPolicy interval="1" modulate="true"/>  
        <SizeBasedTriggeringPolicy size="200 MB"/> 
      </Policies> 
    </RollingFile>  
    <RollingFile name="error_appender" fileName="logs/log-error.log" filePattern="logs/%d{yyyy-MM-dd}/log_error_%i.log.gz">
      <Filters> 
        <ThresholdFilter level="error" onMatch="ACCEPT" onMismatch="DENY"/> 
      </Filters>  
      <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %l - %m%n"/>  
      <Policies> 
        <TimeBasedTriggeringPolicy interval="1" modulate="true"/>  
        <SizeBasedTriggeringPolicy size="200 MB"/> 
      </Policies>  
      <DefaultRolloverStrategy max="3"/> 
    </RollingFile>  
    <RollingFile name="sql_appender" fileName="logs/log-sql.log" filePattern="logs/%d{yyyy-MM-dd}/log_sql_%i.log.gz">
      <Filters> 
        <ThresholdFilter level="debug"/> 
      </Filters>  
      <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %l - %m%n"/>  
      <Policies> 
        <TimeBasedTriggeringPolicy interval="1" modulate="true"/>  
        <SizeBasedTriggeringPolicy size="200 MB"/> 
      </Policies>  
      <DefaultRolloverStrategy max="3"/> 
    </RollingFile> 
  </appenders>  
  <loggers> 
    <Root level="info"> 
      <AppenderRef ref="console"/>  
      <AppenderRef ref="info_appender"/>  
      <AppenderRef ref="error_appender"/> 
    </Root>  
    <Logger name="errorLog" level="info" additivity="false"> 
      <appender-ref ref="error_appender" level="info"/> 
    </Logger>  
    <Logger name="com.example.log4jtest.dao" level="DEBUG" additivity="false">
      <appender-ref ref="sql_appender" level="DEBUG"/>
    </Logger>
  <!--  <logger name="jdbc.connection" level="OFF"/>
    <logger name="jdbc.audit" level="OFF"/>
    <logger name="jdbc.resultset" level="OFF"/>
    <Logger name="jdbc.sqlonly" level="DEBUG" additivity="false">
      <appender-ref ref="sql_appender" level="DEBUG"/>
    </Logger>-->
  </loggers> 
</configuration>

3.项目结构

springBoot2+Mybatis+log4j2日志配置 _ JavaClub全栈架构师技术笔记

作者:zghgchao
来源链接:https://blog.csdn.net/qq_22027637/article/details/92626888

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。


本文链接:https://www.javaclub.cn/java/42486.html

标签: MyBatis
分享给朋友:

“springBoot2+Mybatis+log4j2日志配置” 的相关文章

MyBatis配置的pom文件

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/200...

mybatis实战之拦截器

mybatis实战之拦截器 在服务的开发过程中,往往存在这样的需求,针对业务,实现对数据库操作语句做统一的处理。比如对某些敏感数据如用户姓名、手机号等坐脱敏处理保存和查询、对未实现权限的查询通过添加关联查询实现权限控制查询结果等等。 这时,myba...

mybatis:在springboot中的配置

## Mybatis 配置 mybatis.type-aliases-package=com.xfind.core.entity.xianyu mybatis.mapper-locations=classpath:mapper/*.xml #使全局的映射器启用或禁用缓存。 mybati...

SSM:spring+springmvc+mybatis框架中的XML配置文件功能详细解释(转)

原文:https://blog.csdn.net/yijiemamin/article/details/51156189# 这几天一直在整合SSM框架,虽然网上有很多已经整合好的,但是对于里面的配置文件并没有进行过多的说明,很多人知其然不知其所以然,经过几天的搜索和整理,今天总算...

springboot中配置mybatis别名该怎么写?

springboot中配置mybatis别名该怎么写?

大家好,我是雄雄,欢迎关注微信公众号【雄雄的小课堂】。 今天给大家分享的是,在springboot配置文件中,如何给mybatis实体类起别名。 在以前,我们写mybatis的时候,有一个文件为mybatis-config.xml,sql映射m...

mybatis配置文件中config与mapper的约束

Config的约束: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3....

Mybatis分页插件PageHelper的配置和使用方法

Mybatis分页插件PageHelper的配置和使用方法

http://www.cnblogs.com/kangoroo/p/7998433.html   前言 在web开发过程中涉及到表格时,例如dataTable,就会产生分页的需求,通常我们将分页方式分为两种:前端分页和后端分页。 前端...

Mybatis Generator最完整配置详解

Mybatis Generator最完整配置详解

背景 通过mybatis插件自动生成代码 MyBatis 介绍 MyBatis 是一款标准的 ORM 框架,被广泛的应用于各企业开发中。MyBatis 最早是 Apache 的一个开源项目 iBatis,2010 年这个项目由 Apache Software F...

Mybatis使用xml方式配置

Mybatis使用xml方式配置

官网地址:https://mybatis.org/mybatis-3/zh/getting-started.html 使用案例: 我们创建一个数据库叫做mybatis,在其下创建userinfo数据表,然后创建相应的字段,对应的数据库字段如下: 然后,...

MyBatis配置下划线转驼峰

myBatis配置实现数据库字段下划线映射到java对象的驼峰式命名属性。 要实现上面的配置需要在mybatis-config.xml配置文件中添加如下设置: <?xml version="1.0" encoding="UTF-8" ?>...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。