MyBatisPlus-性能分析

概述

性能分析拦截器,用于输出每条 SQL 语句及其执行时间,SQL 性能执行分析, 开发环境使用,超过指定时间,停止运行。有助于发现问题

配置 SQL 性能分析插件

修改 Config.java 添加如下内容

/**
 * SQL执行性能分析插件
 */
@Bean
@Profile({"dev", "test"})
public PerformanceInterceptor performanceInterceptor() {
    PerformanceInterceptor paginationInterceptor = new PerformanceInterceptor();
    // 参数单位为:ms,超过此处设置的ms则该SQL不会被执行
    paginationInterceptor.setMaxTime(100);
    // 格式化SQL
    paginationInterceptor.setFormat(true);
    return paginationInterceptor;
}

开发环境使用,线上不推荐使用

  • 参数1:maxTime,SQL 执行的最大时长,超过自动停止运行,有助于发现问题
  • 参数2:format,SQL 是否格式化,默认 false

设置环境

修改 application.properties 文件添加如下内容,即可完成设置对应的环境

# 环境设置:dev、test、prod
spring.profiles.active=dev

可以针对各环境新建不同的配置文件 application-dev.propertiesapplication-test.propertiesapplication-prod.properties

设置完成了对应的环境之后执行一下我之前编写好的全查询那个方法,查看效果如下图所示

发现超过了我设置的时长,这里说明一下上方我配置的为 100,在我运行的时候为了给出效果我改为了 10,发现执行失败了,提示我们 SQL 执行时间太长,请优化,如上就是本章的核心内容

posted @   BNTang  阅读(855)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示