mybatis 框架工具集
Features
方法跳转
只对(src/main目录下)的路径有效。
操作方法:
a. 当光标位于接口方法
或者statement id
上,使用快捷键或命令(具体查看命令章节)。
b. mapper接口和xml有跳转提示(go to Mapper XML
, go to Mapper java
),点击即可跳转。(感谢shunf4
同学的pr. ^_^)
c. 不存在对应的java方法, 或者动态sql, 允许自动创建.
此时会提示三种选项:
- 直接跳转到文件
- 不跳转
- 创建方法或者动态sql(创建位置为末尾)
c. 支持引用跳转
对xml中的type
,resultType
,parameterType
,resultMap
,parameterMap
,refid
跳转到指定位置进行支持。
目前只支持项目中的类, 不支持别名方式,不支持基础类型。
日志格式化
目前支持MYSQL, ORACLE, 默认为MYSQL
操作方法:
首先复制要转换的sql日志,使用快捷键或命令(具体查看命令章节)。
注意:
复制的日志必须包含:Preparing:
, Parameters:
。
文件生成器
操作方法:
- 使用
ctrl+m ctrl+g
,打开文件生成器页面。
- 在生成策略页面按需配置即可。注意需要先配置数据库信息。
注意:
- 项目路径为
/a/b/c
形式, 如果指定磁盘则需在最前面加上/
, 如/D:/a/b/c
。
- 数据库配置需要提前配置好,并且确保连接成功。
- 如果需要删除之前的配置,可以找到配置文件后,在配置文件中删除。
- 字段类型匹配根据正则表达式,如果有多个符合则取最长的表达式对应的类型。
关于路径配置的细节:
- 项目路径必须配置。
- 只配置项目路径,所有文件生成在该路径下。
- xml路径不配置,xml生成到接口同目录下。
- entity不配置,entity文件生成到顶级包路径下。
- mapper接口不配置,接口和xml文件生成到顶级包路径下。
- 顶级包路径和项目路径间自动加上
src/main/java
路径
- xml路径前自动加上
src/main/resources
路径。
- 顶级目录为绝对地址,其他为相对位置。
- 如果不配置顶级包,entity,mapper,xml包包名需要手动修改。
关于oracle数据库连接:
oracle的连接需要借助jdk才可以运行,因此需要你本地安装客户端。
前提:安装oracle client
并配置环境变量, 参考nodejs 使用官方oracledb库连接数据库 教程
缓存
缓存不是用户必须操作的项目。
关于缓存的使用:
a. 当调整文件位置、变更接口文件名、命名空间后,应该要清理缓存的映射文件位置。(ctrl+m ctrl+c)
b. 会加载项目中所有的映射关系,用于跳转时加速查找映射。(ctrl+m ctrl+d)
命令
所有命令均为mybatis-tools
作为分组前缀. 以下所有快捷键均为组合键。(当然ctrl+shift+p
, 之后输入命令也是可以的)
命令 |
快捷键 |
含义 |
mybatis-tools.jumper |
ctrl+m ctrl+j |
跳转功能, 当光标位于接口方法 或者statement id 上,使用该命令即可 |
mybatis-tools.log-format |
ctrl+m ctrl+f |
mybatis 日志格式化 将参数填充到动态sql中, 注意需要包含: Preparing: , Parameters: |
mybatis-tools.config |
ctrl+m ctrl+c |
加载项目中的命名空间及映射. 如果之后调整过文件位置需要重新执行该命令或者执行清理命令 |
mybatis-tools.clean |
ctrl+m ctrl+d |
清除映射关系缓存 |
mybatis-tools.generate-file |
ctrl+m ctrl+g |
文件生成器 |
Extension Settings
数据库类型
当使用日志填充命令时, 需要根据数据库类型进行转换某些类型(如: date)
如果不使用该配置,会弹出一个选择框,需要选中数据库类型。
该配置作用于工作空间
在工作空间的setting.json第一层级, 插入如下配置:
"mybatis-tools.databaseType": "mysql",
注意:
目前支持mysql,oracle。
Known Issues
Release Notes
1.3.1
fix: 弃用globalState管理映射扫描状态,改用传参
1.3.0
- 全局mapper映射索引减少findFiles调用量,调用过程加锁
- 跳转文件识别适配Unix系统的正斜杠“/”
1.2.0
new features:
- mapper接口和xml添加跳转提示(
go to Mapper XML
, go to Mapper java
)。通过点击即可跳转.
(感谢shunf4
同学的pr. ^_^)
1.1.1
bug fix:
- 判断条件错误, 不使用lombok, 无法生成get set方法.
1.1.0
new features:
对xml中的type resultType parameterType resultMap parameterMap refid跳转到指定位置进行支持
注意需要将光标放置在值上,使用快捷键.
目前只支持项目中的类和xml文件, 不支持类别名,不支持基础类型。
1.0.2
new features:
- 可以控制是否生成某些文件
- 控制是否使用mybatis-plus注解
- 实体类后缀自定义
1.0.1
new features:
- 默认类型映射完善。
- 删除功能数据库配置和类型映射功能
- 增加类名后缀自定义, 是否使用mybatis-plus注解自定义
1.0.0
new features:
- 支持生成数据库表对应的实体类,xml,mapper接口文件
- 通过webview页面进行交互。(命令ctrl+m, ctrl+g)
- 支持自定义生成文件中元素内容。(目前支持lombok, swagger)
- 支持数据类型映射的自定义。
- 支持数据库配置的保存。
- 支持oracle, mysql数据库。
- 比较人性化的生成路径配置。(请详细阅读路径细节配置)
- 明暗主题切换。(右上角)
- 支持内网环境使用。
todo:
- 更多连接方式支持(目前只支持账号密码方式)
- 默认类型映射完善。
- 删除功能(目前删除配置只能在配置文件中删除)
0.0.6
bug fix:
- 修复参数中含有空字符时,会将类型作为参数的问题。
0.0.5
new features:
- 缓存优化
- 文件查找范围为
**/src/main/**
- 新增手动清除缓存命令
0.0.4
bug fix:
跳转后选中单词, 并且将选中位置显示在当前屏幕中.
0.0.3
new features:
- 日志格式化
- 插件有logo了! \(T_T)/
- 完善readme.
0.0.2
new features:
- 当匹配不到跳转的方法或者sql时, 提示创建方法或动态sql选项.
- 增加命令对应的快捷键.
- 完善readme.
fix bugs:
- 光标位于单词末尾无法跳转
0.0.1
Initial release of mybatis-tools, this version only for test.
Enjoy!