MyBatis-Plus学习笔记(六) 性能分析插件

狂神说Java:https://www.bilibili.com/video/BV17E411N7KN?p=13学习笔记


一、性能分析插件

  • 功能:开发时,我们会遇到一些慢sql,但工作中不允许用户等待,因此我们需要揪出慢sql,将其优化
  • Mybtis-plus性能分析插件就是可以揪出慢sql的工具,它会分析每条sql执行的时间,超时停止运行

1.导入插件

    @Bean
    @Profile({"dev","test"})                    //设置测试环境和开发环境开启,保证效率
    public PerformanceInterceptor performanceInterceptor(){
        PerformanceInterceptor performanceInterceptor = new PerformanceInterceptor();
        performanceInterceptor.setMaxTime(1);   //ms 设置sql执行最大时间为1ms,超时则不执行
        performanceInterceptor.setFormat(true); //格式化sql语句
        return performanceInterceptor;
    }

2.在application.yml中设置开发环境

spring:
  profiles:
    active: dev

3.测试分析

    @Test
    public void testSelect(){

        HashMap<String, Object> map = new HashMap<>();

        List<User> users = userMapper.selectByMap(map);
        users.forEach(System.out::println);
    }

  • 查询数据库出错,因为sql语句执行时间为42ms,大于设置的1ms
  • sql语言已格式化

4.将限制时间改为100ms,再次测试

    @Bean
    @Profile({"dev","test"})                    //设置测试环境和开发环境开启,保证效率
    public PerformanceInterceptor performanceInterceptor(){
        PerformanceInterceptor performanceInterceptor = new PerformanceInterceptor();
        performanceInterceptor.setMaxTime(100);   //ms 设置sql执行最大时间为1ms,超时则不执行
        performanceInterceptor.setFormat(true); //格式化sql语句
        return performanceInterceptor;
    }

猜你喜欢

转载自blog.csdn.net/qq_41694490/article/details/114275769