news 2026/9/24 6:09: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/9/20 20:51:48

灰度发布流程设计:新版本上线前的风险控制措施

灰度发布流程设计&#xff1a;新版本上线前的风险控制措施 在AI模型迭代日益频繁的今天&#xff0c;一次看似微小的参数调整或提示词优化&#xff0c;可能带来意想不到的行为偏移。尤其当模型被用于数学推理、代码生成等对准确性要求极高的场景时&#xff0c;任何未被发现的缺陷…

作者头像 李华
网站建设 2026/9/20 20:50:57

收藏必备:RAGate - 让大模型告别“无脑检索“的自适应检索增强技术

RAGate提出智能门控机制解决传统RAG系统盲目检索问题&#xff0c;通过三种实现路径优化检索决策。实验表明&#xff0c;基于多头注意力的RAGate-MHA仅需29%的检索量就能获得比全时检索更好的生成质量&#xff0c;减少70%不必要检索&#xff0c;同时提升知识准确性和生成置信度&…

作者头像 李华
网站建设 2026/9/20 22:44:00

Docker Compose编排文件示例:多容器协同服务部署

Docker Compose编排文件示例&#xff1a;多容器协同服务部署 在如今的AI工程实践中&#xff0c;一个越来越常见的场景是&#xff1a;开发者希望在本地或边缘设备上快速部署一个具备完整交互能力的小模型系统——比如让一款专精于数学推理的轻量语言模型&#xff0c;既能通过网…

作者头像 李华
网站建设 2026/9/20 21:16:13

WebSocket长连接支持:实现实时交互式解题辅导系统

WebSocket长连接支持&#xff1a;实现实时交互式解题辅导系统 在编程竞赛训练营或高阶数学课堂中&#xff0c;一个学生正尝试证明一道复杂的组合恒等式。他卡在了归纳假设的构造环节&#xff0c;传统的AI助手只能重复输出相似提示&#xff1a;“考虑使用数学归纳法”&#xff0…

作者头像 李华
网站建设 2026/9/20 21:20:26

MIT Technology Review报道契机:引发主流媒体关注

小模型也能大作为&#xff1a;VibeThinker-1.5B-APP 如何用 7800 美元改写推理边界 在 GPT-4、Claude 和 Gemini 动辄数千亿参数、训练成本破亿的今天&#xff0c;一个仅 15 亿参数、总开销不到 8000 美元的模型&#xff0c;却在数学与编程推理任务中频频击败“巨无霸”——这听…

作者头像 李华