SpringBoot與MybatisPlus整合之SQL分析插件(六)


  • pom.xml:  

  <dependency>
            <groupId>p6spy</groupId>
            <artifactId>p6spy</artifactId>
            <version>3.8.0</version>
        </dependency>
  • application.yml 配置:

spring:
  datasource:
    driver-class-name: org.h2.Driver
    url: jdbc:h2:tcp://192.168.180.115:19200/~/mem/test
    username: root
    password: test
​
mybatis-plus:
  global-config:
    db-config:
      id-type: id_worker
      capital-mode: true
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
  • spy.properties 配置:

module.log=com.p6spy.engine.logging.P6LogFactory,com.p6spy.engine.outage.P6OutageFactory
# 自定義日志打印
logMessageFormat=com.baomidou.mybatisplus.extension.p6spy.P6SpyLogger
#日志輸出到控制台
appender=com.baomidou.mybatisplus.extension.p6spy.StdoutLogger
# 使用日志系統記錄 sql
#appender=com.p6spy.engine.spy.appender.Slf4JLogger
# 設置 p6spy driver 代理
deregisterdrivers=true
# 取消JDBC URL前綴
useprefix=true
# 配置記錄 Log 例外,可去掉的結果集有error,info,batch,debug,statement,commit,rollback,result,resultset.
excludecategories=info,debug,result,batch,resultset
# 日期格式
dateformat=yyyy-MM-dd HH:mm:ss
# 實際驅動可多個
#driverlist=org.h2.Driver
# 是否開啟慢SQL記錄
outagedetection=true
# 慢SQL記錄標准 2 秒
outagedetectioninterval=2
  • 配置類,官網已經棄用了插件,推薦使用P6spy

    @Configuration
    public class MybatisPlusConfig {
    ​
    //    該插件 3.1.2 后版本廢棄,推薦使用
    //    @Bean
    //    public PerformanceInterceptor performanceInterceptor(){
    //        //啟用性能分析插件
    //        return new PerformanceInterceptor();
    //    }
    }
  • 實體類

    @Data
    @TableName(value = "student")
    public class Student {
    ​
        private Long id;
    ​
        private String name;
    ​
        private Integer age;
    ​
    }
    ​
    @Mapper
    public interface StudentMapper extends BaseMapper<Student> {
    ​
    ​
    }
    ​
  • 測試類

    ​
    @SpringBootTest
    class EanalysisApplicationTests {
    ​
        @Autowired
        private StudentMapper studentMapper;
    ​
        @Test
        public void test(){
            studentMapper.selectList(new QueryWrapper<>());
        }
    ​
    ​
    }
  • 測試結果

    2019-10-30 16:15:22.235  INFO 11508 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.
     Consume Time:7 ms 2019-10-30 16:15:22
     Execute SQL:SELECT id,name,age FROM student
    ​
    2019-10-30 16:15:22.328  INFO 11508 --- [extShutdownHook] com.zaxxer.hikari.HikariDataSource  

     


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM