news 2026/6/15 18:54:03

Chrome扩展插件MyBatis SQL Log Merger使用教程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Chrome扩展插件MyBatis SQL Log Merger使用教程

MyBatis SQL Log Merger 是一个Chrome扩展程序,帮助开发者将MyBatis SQL日志合并成完整的SQL语句,便于调试和分析。

相关链接

  • 项目主页
  • 使用教程

功能特点

  • 解析MyBatis日志输出,提取SQL模板和参数
  • 自动将参数合并到SQL模板中,形成完整的可执行SQL
  • 简洁的UI界面,包含输入和输出字段
  • 支持复杂的参数类型,包括Long、String、Timestamp等
  • 三种交互模式:弹出窗口、独立页面和页面按钮
  • 界面简洁直观
  • SQL格式化和语法高亮
  • 可折叠的使用说明和示例
  • 复制到剪贴板功能
  • 双输入模式:单框模式(粘贴完整日志)或双框模式(分别输入SQL模板和参数)
  • 灵活的输入解析:单框和双框模式都支持带或不带Preparing:/Parameters:前缀的输入
  • 可配置的URL模式用于页面按钮显示
  • 多语言支持(中文/英文)

安装方法

  1. 克隆或下载此仓库
  2. 打开Chrome浏览器,访问chrome://extensions/
  3. 在右上角启用"开发者模式"
  4. 点击"加载已解压的扩展程序",选择包含此扩展的目录

项目结构

sql-log-merge/ ├── css/ │ └── styles.css # 独立页面样式 ├── images/ │ ├── icon16.png # 扩展图标 (16x16) │ ├── icon48.png # 扩展图标 (48x48) │ └── icon128.png # 扩展图标 (128x128) ├── js/ │ ├── business/ # 业务逻辑JavaScript文件 │ │ ├── collapsible.js # 可折叠面板功能 │ │ ├── content.js # 页面交互的内容脚本 │ │ ├── popup.js # 弹出窗口逻辑 │ │ └── standalone.js # 独立页面逻辑 │ └── vendor/ # 第三方库 │ └── sql-formatter.min.js # SQL格式化库 ├── manifest.json # Chrome扩展清单文件 ├── popup.html # 弹出窗口HTML ├── standalone.html # 独立页面HTML ├── settings.html # 设置页面HTML ├── README.md # 此文件 ├── sample-input.txt # 示例MyBatis日志输入 └── expected-output.txt # 示例输入对应的预期SQL输出

使用方法

该扩展提供三种方式来合并MyBatis SQL日志:

1. 弹出窗口(默认)
  1. 点击Chrome工具栏中的扩展图标
  2. 将MyBatis日志输出粘贴到输入字段中
  3. 点击"处理"按钮生成合并后的SQL语句
  4. 完整的SQL将显示在结果区域
2. 独立页面
  1. 点击Chrome工具栏中的扩展图标
  2. 点击"打开独立页面"打开独立页面
  3. 使用独立页面界面处理您的日志
输入模式

独立页面提供两种可切换的输入模式:

  1. 单框模式(默认)

    • 在一个文本区域中粘贴完整的MyBatis日志

    • 示例:

      ==> Preparing: SELECT * FROM users WHERE id = ? AND name = ? ==> Parameters: 123(Long), "John"(String)
  2. 双框模式

    • 分别输入SQL模板和参数

    • SQL模板和参数都支持带或不带前缀的输入

    • SQL模板(任一格式均可):

      Preparing: SELECT * FROM users WHERE id = ? AND name = ?

      SELECT * FROM users WHERE id = ? AND name = ?
    • 参数(任一格式均可):

      Parameters: 123(Long), "John"(String)

      123(Long), "John"(String)
3. 页面按钮
  1. 导航到任何网页
  2. 选择页面上的MyBatis日志文本
  3. 点击右下角出现的绿色"提取MyBatis SQL"按钮
  4. 合并后的SQL将在警告对话框中显示
配置页面按钮显示

默认情况下,页面按钮不会在任何网站上显示。您可以配置哪些网站应该显示该按钮:

  1. 点击Chrome工具栏中的扩展图标
  2. 点击"设置"打开设置页面
  3. 在"网页过滤设置"部分,添加您希望显示按钮的URL模式
  4. URL模式示例:
    • https://example.com/*- 匹配example.com上的所有页面
    • *://*.example.com/*- 匹配example.com及其子域上的所有页面(任意协议)
    • https://grafana.test.cn/- 仅匹配此特定URL

独立页面功能

独立页面提供增强功能:

  1. 可折叠说明:点击"使用说明"或"示例"标题可展开/折叠部分

  2. 输入模式切换:在单框和双框输入模式之间切换

  3. 灵活输入解析:两种模式都支持带或不带Preparing:/Parameters:前缀的输入

  4. 增强按钮控制

    • 处理SQL:将MyBatis日志转换为SQL
    • 美化SQL:格式化并高亮显示SQL语句(处理后启用)
    • 拷贝结果:将SQL复制到剪贴板(处理后启用)
    • 清空:重置所有字段
  5. 专业SQL格式化:使用sql-formatter库进行专业的SQL格式化

  6. 集成格式化和高亮:"美化SQL"按钮现在结合了格式化和语法高亮功能

  7. 响应式设计:适应不同屏幕尺寸

示例

输入:

2025-12-15T15:09:29.971Z||f55726b11267623a1c5de0b06a5d718f|313/445|[thread-pool-asyncServiceExecutor12]||f55726b11267623a1c5de0b06a5d718f-TID: N/A - 485> ==> Preparing: select * from user where userId=? 2025-12-15T15:09:29.971Z||f55726b11267623a1c5de0b06a5d718f|314/446|[thread-pool-asyncServiceExecutor12]||f55726b11267623a1c5de0b06a5d718f-TID: N/A - 554> ==> Parameters: 10(Integer) 2025-12-15T15:09:29.972Z||f55726b11267623a1c5de0b06a5d718f|315/447|[thread-pool-asyncServiceExecutor12]||f55726b11267623a1c5de0b06a5d718f-TID: N/A - 17> <== Total: 1

输出:

select * from user where userId = 10

支持的参数类型

  • Long
  • String
  • Integer
  • Double
  • Float
  • Boolean
  • Timestamp
  • Date
  • NULL值

限制

  • 目前仅适用于基本的SELECT、INSERT、UPDATE、DELETE语句
  • 复杂的嵌套参数结构可能无法完全支持
  • 不验证生成的SQL的语法正确性

GitHub - liuyueyi/ai-chrome-mysql-merge: MyBaits Mapper Debug log to Sql

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 12:23:57

【Docker日志管理终极指南】:掌握高效日志输出与排查技巧

第一章&#xff1a;Docker日志管理的核心概念与重要性Docker容器的短暂性和动态调度特性使得传统的日志追踪方式难以适用。有效的日志管理不仅是故障排查的关键&#xff0c;更是保障系统可观测性的基础。通过集中化收集、结构化解析和实时监控容器输出&#xff0c;运维团队能够…

作者头像 李华
网站建设 2026/6/15 12:27:04

收藏必备!大模型智能体完全指南:从PEAS模型到ReAct架构的实战详解

文章介绍了大模型智能体的概念、工作原理和实现方法。涵盖PEAS模型、Agent Loop、提示工程等基础概念&#xff0c;对比智能体与传统工作流的区别&#xff0c;详解Temperature、Top-k与Top-p等参数调优技术&#xff0c;并系统阐述ReAct、Plan-Solve和Reflection三种核心架构&…

作者头像 李华
网站建设 2026/6/15 13:38:16

计算机毕业设计springboot城市交通管理系统 基于SpringBoot的智慧城市道路交通调度平台 SpringBoot+MySQL构建的城区交通流在线管控系统

计算机毕业设计springboot城市交通管理系统h2c05tty &#xff08;配套有源码 程序 mysql数据库 论文&#xff09; 本套源码可以在文本联xi,先看具体系统功能演示视频领取&#xff0c;可分享源码参考。城市化把道路压成一条条喘不过气的血管&#xff0c;红灯前的长队、公交站台的…

作者头像 李华
网站建设 2026/6/13 5:19:26

什么是计算机病毒

文章目录计算机病毒的常见类型和攻击方式计算机病毒的特点哪些迹象表明可能已感染计算机病毒如何防御计算机病毒计算机病毒是编制者在计算机程序中插入的破坏计算机功能或者破坏数据&#xff0c;影响计算机使用并且能够自我复制的一组计算机指令或程序代码。因其特点与生物学上…

作者头像 李华
网站建设 2026/6/15 18:46:53

缓存机制设计建议:减少重复请求节省Token消耗

缓存机制设计建议&#xff1a;减少重复请求节省Token消耗 在算法竞赛训练平台、自动解题系统等高频调用场景中&#xff0c;每一次对大语言模型的请求都在悄悄消耗着可观的计算资源和Token配额。即便使用的是像 VibeThinker-1.5B-APP 这样仅含15亿参数的小型模型&#xff0c;若缺…

作者头像 李华