Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>MyBatis ToolkitNew to Visual Studio Code? Get it now.
MyBatis Toolkit

MyBatis Toolkit

Preview

codesbamboo

|
1 install
| (0) | Free
MyBatis log-to-SQL conversion and Mapper interface/XML navigation for VS Code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

MyBatis Toolkit

一个用于 VS Code 的 MyBatis 辅助扩展。当前提供以下功能:

  1. 将集成终端中的 MyBatis Preparing、Parameters 日志还原为可执行 SQL。
  2. 在 Java Mapper 接口与 MyBatis Mapper XML 之间相互跳转。

Mapper 接口与 XML 相互跳转

扩展按照 MyBatis 的标准对应关系查找目标:

  • XML 的 namespace 对应 Java 接口全限定名。
  • XML 的 SQL 语句 id 对应 Java 接口方法名。

例如:

package com.example.user;

public interface UserMapper {
    User findById(Long id);
}
<mapper namespace="com.example.user.UserMapper">
    <select id="findById" resultType="User">
        SELECT * FROM user WHERE id = #{id}
    </select>
</mapper>

支持以下跳转:

  • Java 接口名 → XML namespace。
  • Java 方法名 → XML 中同名的 select、insert、update 或 delete。
  • XML namespace → Java 接口。
  • XML SQL 语句 id → Java 同名方法。

使用方式

可以使用任意一种方式:

  1. 点击接口、方法或 XML 语句上方的 CodeLens 跳转提示。
  2. 在对应名称上使用 Ctrl/Cmd + 点击或 F12。
  3. 将光标放到对应声明上,在命令面板执行: MyBatis Toolkit: 跳转到 Mapper 接口/XML。

首次跳转时扩展会在后台建立工作区索引;后续会监听 Java/XML 文件变化。

MyBatis 日志转 SQL

在 VS Code 集成终端中找到一组 MyBatis 日志:

==> Preparing: SELECT * FROM user WHERE id = ? AND name = ?
==> Parameters: 1(Integer), Tom(String)
  1. 按住 Ctrl(Windows/Linux)或 Cmd(macOS),点击 Preparing 行。
  2. 使用相同方式点击对应的 Parameters 行。
  3. 两行的点击顺序不限。
  4. 扩展会打开“MyBatis SQL”面板,点击“复制 SQL”即可。

还原结果:

SELECT * FROM user WHERE id = 1 AND name = 'Tom'

当前限制

  • Mapper 导航第一版只解析 Java 接口,暂不解析 Kotlin Mapper。
  • XML 导航支持 select、insert、update 和 delete 的 id。
  • Java 方法重载或多个同名 XML 语句会弹出目标选择列表。
  • Mapper XML 的 namespace 必须与 Java 接口全限定名一致。
  • 日志转 SQL 仅支持 VS Code 集成终端。
  • 每条 Preparing 和 Parameters 日志需要位于单独一行。
  • 扩展不会读取终端历史;必须明确点击需要配对的两行。
  • 当前不连接数据库,也不会直接执行 SQL。

开发

npm install
npm test

在 VS Code 中按 F5 可以启动 Extension Development Host。

声明

本扩展是独立的社区项目,与 MyBatis 官方不存在隶属或背书关系。 扩展图标基于 MyBatis 官方网站提供的 MyBatis Logo 制作,MyBatis 名称及 Logo 归其相应权利人所有。

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft