MyBatis Method Jumper
一个VSCode扩展,实现MyBatis XML文件中的SQL片段和引用之间的双向导航:
- 从引用(
<include refid="..."> )跳转到其定义(<sql id="..."> )
- 从定义跳转到所有引用(在哪里使用了该SQL片段)
功能特点
1. 从引用跳转到定义
- 在任何
<include refid="query_list"> 中,按住Ctrl+鼠标左键点击"query_list",跳转到对应的<sql id="query_list"> 定义。
2. 从定义跳转到引用
- 在任何
<sql id="query_list"> 中,按住Ctrl+鼠标左键点击"query_list",找到所有使用该SQL片段的位置。
- 如果只有一个引用,会直接跳转到该位置。
- 如果有多个引用,会显示快速选择菜单,让你选择要跳转到哪个引用位置。
工作原理
这个扩展使用相同的Ctrl+点击界面实现双向导航:
引用到定义:当你在include标签的refid值上按住Ctrl并点击时,扩展会查找并跳转到对应的SQL定义。
定义到引用:当你在SQL定义标签的id值上按住Ctrl并点击时,扩展会查找所有引用该SQL片段的位置:
- 如果只有一个引用,直接跳转到该位置
- 如果有多个引用,显示选择菜单让你选择要跳转到哪个引用位置
快捷键
- Ctrl+点击(macOS上为Cmd+点击):在定义和引用之间双向导航
系统要求
- Visual Studio Code 1.80.0 或更高版本
安装方法
从VS Code插件市场安装
- 打开VS Code
- 进入扩展视图(Ctrl+Shift+X)
- 搜索"MyBatis Method Jumper"
- 点击安装
通过VSIX文件安装
- 下载.vsix文件
- 打开VS Code
- 进入扩展视图(Ctrl+Shift+X)
- 点击扩展视图顶部的"..."
- 选择"从VSIX安装..."
- 选择下载的.vsix文件
开发指南
前提条件
- Node.js
- Visual Studio Code
- 克隆仓库
- 安装依赖
npm install
测试
在开发主机中运行扩展:
F5(或调试 > 开始调试)
运行测试:
npm test
构建
构建VSIX包:
npm run package
已知问题
- 目前仅支持同一文件内的导航。
- 仅适用于
<include refid="..."> 标签指向<sql id="..."> 定义的情况。
未来增强
- 添加对跨文件定义导航的支持。
- 添加对其他MyBatis标签类型的支持。
- 提高处理大型XML文件的性能。
版本说明
1.1.0
- 改进了定义和引用查找的可靠性
- 更新了扩展激活事件
- 优化了XML文件处理性能
1.0.0
MyBatis Method Jumper 的首次发布。
许可证
此扩展基于MIT许可证授权。
作者
Intelligent-GuoXin
| |