美文网首页spring framework
java在spring boot 下的 mybatis plus

java在spring boot 下的 mybatis plus

作者: 小李子 | 来源:发表于2021-03-17 09:53 被阅读0次

由于之前配置错误,导致服务器上没有sql的执行日志。被经理发现后重新检查把sql日志弄上去了。直接上代码

1.依赖

  •    <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-web</artifactId>
          <exclusions>
              <exclusion>
                  <groupId>org.springframework.boot</groupId>
                  <artifactId>spring-boot-starter-logging</artifactId>
              </exclusion>
          </exclusions>
      </dependency>
    
  •    <!--log4j2-->
      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-log4j2</artifactId>
      </dependency>
    
  •    <!-- mybatis plus 代码生成器 -->
      <dependency>
          <groupId>com.baomidou</groupId>
          <artifactId>mybatis-plus-boot-starter</artifactId>
          <version>3.2.0</version>
      </dependency>
      <dependency>
          <groupId>com.baomidou</groupId>
          <artifactId>mybatis-plus-generator</artifactId>
          <version>3.2.0</version>
      </dependency>
      <dependency>
          <groupId>org.freemarker</groupId>
          <artifactId>freemarker</artifactId>
          <version>2.3.28</version>
      </dependency>
      <dependency>
          <groupId>com.alibaba</groupId>
          <artifactId>fastjson</artifactId>
          <version>1.2.47</version>
      </dependency>
      <dependency>
          <groupId>com.baomidou</groupId>
          <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
          <version>3.3.1</version>
      </dependency>
    

2.log4j2-spring.xml文件配置

<?xml version="1.0" encoding="UTF-8"?>
<!--Configuration后面的status,这个用于设置log4j2自身内部的信息输出,可以不设置,当设置成trace时,你会看到log4j2内部各种详细输出-->
<!--monitorInterval:Log4j能够自动检测修改配置 文件和重新配置本身,设置间隔秒数-->
<configuration monitorInterval="5" status="DEBUG">
    <!--日志级别以及优先级排序: OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL -->
    <!--变量配置-->
    <Properties>
        <!-- 格式化输出:%date表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度 %msg:日志消息,%n是换行符-->
        <!-- %logger{36} 表示 Logger 名字最长36个字符 -->
        <property name="LOG_PATTERN" value="%date{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n" />
        <!-- 定义日志存储的路径,不要配置相对路径 -->
        <property name="FILE_PATH" value="/home/logDir/" />
        <property name="FILE_NAME" value="/psi" />
    </Properties>
    <appenders>
        <console name="Console" target="SYSTEM_OUT">
            <!--控制台只输出level及其以上级别的信息(onMatch),其他的直接拒绝(onMismatch)-->
            <ThresholdFilter level="DEBUG" onMatch="ACCEPT" onMismatch="DENY"/>
            <!--输出日志的格式-->
            <PatternLayout pattern="${LOG_PATTERN}"/>
        </console>
        <RollingFile name="RollingFileInfo"
                     fileName="${FILE_PATH}/${FILE_NAME}/psi.log"
                     filePattern="${FILE_PATH}/${FILE_NAME}/%d{yyyy-MM}/psi-%d{yyyy-MM-dd}.log">
            <PatternLayout pattern="${LOG_PATTERN}"/>
            <ThresholdFilter level="DEBUG" onMatch="ACCEPT" onMismatch="DENY"/>
            <Policies>
                <TimeBasedTriggeringPolicy modulate="true" interval="1"/>
            </Policies>
        </RollingFile>
    </appenders>
    <!--Logger节点用来单独指定日志的形式,比如要为指定包下的class指定不同的日志级别等。-->
    <!--然后定义loggers,只有定义了logger并引入的appender,appender才会生效-->
    <loggers>
        <!--过滤掉spring和mybatis的一些无用的DEBUG信息-->
        <logger name="org.mybatis" level="WARN" additivity="false">
            <AppenderRef ref="RollingFileInfo"/>
        </logger>
        <logger name="com.alibaba.druid" level="WARN" additivity="false">
            <AppenderRef ref="RollingFileInfo"/>
        </logger>
        <!--监控系统信息-->
        <!--若是additivity设为false,则 子Logger 只会在自己的appender里输出,而不会在 父Logger 的appender里输出。-->
        <Logger name="org.springframework" level="WARN" additivity="false">
            <AppenderRef ref="RollingFileInfo"/>
        </Logger>
        <root level="DEBUG">
            <AppenderRef ref="Console"/>
            <AppenderRef ref="RollingFileInfo"/>
        </root>
    </loggers>
</configuration>

3.springboot配置文件

mybatis-plus:
 configuration:
  map-underscore-to-camel-case: true
  auto-mapping-behavior: full
  #log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
 mapper-locations: classpath:mybatis/mapper/*.xml
 global-config:
  # 逻辑删除配置
  db-config:
   # 删除前
   logic-not-delete-value: 1
   # 删除后
   logic-delete-value: 0

4.这样配置了之后,服务器sql日志就能正常打印出来了。

image.png

如果这篇文章有点用,请在留言栏打个1鼓励下,谢谢你,祝你工作顺利~~

相关文章

网友评论

    本文标题:java在spring boot 下的 mybatis plus

    本文链接:https://www.haomeiwen.com/subject/yzsscltx.html