注明:为什么我们要用mybatis plus的性能分析插件,因为当一个系统也业务复杂时候,我们可以根据执行sql的时间来定位是哪块的sql还有待优化
但是在生产环境 pro下 不建议使用这个插件会影响性能
1:在application.properties中加入环境设置
#环境设置:dev、test、prod
spring.profiles.active=dev
2:配置sql性能分析插件
/**
* SQL 执行性能分析插件
* 开发环境使用,线上不推荐。 maxTime 指的是 sql 最大执行时长
*/
@Bean
@Profile({"dev","test"})// 设置 dev test 环境开启
public PerformanceInterceptor performanceInterceptor() {
PerformanceInterceptor performanceInterceptor = new PerformanceInterceptor();
performanceInterceptor.setMaxTime(100);//ms,超过此处设置的ms则sql不执行
performanceInterceptor.setFormat(true);
return performanceInterceptor;
}
3:上述设置最大sql执行时间为100ms,那么就看一下超过100ms和不超过100ms的结果
不超过100毫米运行结果
Time:29 ms - ID:com.qiyun.mpdemo01.mapper.UserMapper.selectList
超过100毫秒运行结果###
Cause: com.baomidou.mybatisplus.core.exceptions.MybatisPlusException: The SQL execution time is too large, please optimize !