V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
gejun123456
V2EX  ›  推广

最好的 Mybatis 代码提示, IDEA MybatisCodeHelperPro 插件送激活码

  •  5
     
  •   gejun123456 · 2020-10-13 09:54:33 +08:00 · 14809 次点击
    这是一个创建于 1263 天前的主题,其中的信息可能已经有所发展或是发生改变。

    第一个完整解决 Mybatis 动态 sql 代码提示的插件。

    IDEA 高级版提供了 sql 自动补全 sql 语法检测,IDEA 高级版可以写出安全的 sql 如下图

    ideaInnerSupport

    对于使用 mybatis 会导致 sql 错误 可能以下几种原因

    1. sql 中使用了 mybatis 的动态标签 include trim set where foreach
    2. 使用了 if test choose when 条件判断
    3. if test when bind ${} foreach collection 中的判断语句错误
    4. #{} 中的语句错误

    插件可以识别 include trim set where foreach 标签,使用了标签的 sql 可以进行检测和自动补全

    比如对于 trim 标签 ![trim 标签正确性检测]( https://gejun123456.coding.net/p/MyBatisCodeHelper-Pro/d/MyBatisCodeHelper-Pro/git/raw/master/screenshots/trim 标签正确性检测.gif)

    set 标签 ![set 标签正确性]( https://gejun123456.coding.net/p/MyBatisCodeHelper-Pro/d/MyBatisCodeHelper-Pro/git/raw/master/screenshots/set 标签正确性.gif)

    当使用 if test 时 可能只有部分条件成立 choose when 则只有一个条件成立 插件引入了 @ignoreSql 注释,如果需要 if test 或 choose when 不成立可以使用该注释,检测 sql 是否正确和代码提示

    chooseWhenAutoComplete

    当我们写 if test when bind ${} foreach collection 中的语句也可能会出错,这块语法是使用的 ognl 语法,插件对这块进行了支持

    if test when test ![ifWhenTest 中 ognl 支持]( https://gejun123456.coding.net/p/MyBatisCodeHelper-Pro/d/MyBatisCodeHelper-Pro/git/raw/master/screenshots/ifWhenTest 中 ognl 支持.gif)

    bind 和 ${ ![bind 和${的 ognl 支持]( https://gejun123456.coding.net/p/MyBatisCodeHelper-Pro/d/MyBatisCodeHelper-Pro/git/raw/master/screenshots/bind 和${的 ognl 支持.gif)

    bind 进行绑定变量的类型推断支持

    ognl method call

    对于 ${ 由于里面的输入可以是任意字符,sql 会无法解析,插件引入了 $sql 注释,如上图,真正要被替换的语句写入$sql 注释中

    foreach collection ![collection 标签跳转检测正确]( https://gejun123456.coding.net/p/MyBatisCodeHelper-Pro/d/MyBatisCodeHelper-Pro/git/raw/master/screenshots/collection 标签跳转检测正确.gif)

    在 2.5 版本后 插件便可以对 #{}中的内容进行检测是否正确

    ![检测 param 是否正确]( https://gejun123456.coding.net/p/MyBatisCodeHelper-Pro/d/MyBatisCodeHelper-Pro/git/raw/master/screenshots/检测 param 是否正确.gif)

    另外在 sql 标签中的 sql 由于不是完整的 sql,无法进行检测和代码补全,插件引入了 @sql 注释,在注释中把 sql 的前缀和后缀填写进去,可保证 sql 标签中的 sql 无误

    sqlTagNoError

    另外还有一系列其他代码提示,方法名生成 sql,表生成 crud,生成 testcase 等功能,大幅提升开发 Mybatis 的效率。可以参考文档: https://gejun123456.github.io/MyBatisCodeHelper-Pro/#/

    插件目前售价为 99 三年,购买链接: http://brucege.com ,欢迎试用。

    送激活码规则

    评论中每 10 个不同的用户 id 合起来 hash 取余送一个年费激活码,从激活的那天开始算起,已购买插件的用户也可以参与。 请勿刷评论,刷评论不送。

    第 1 条附言  ·  2020-10-13 10:48:04 +08:00
    ## 上面部分图片挂了,可以看 http://118.24.53.162/#/typeSafe 这节
    448 条回复    2020-11-04 17:36:11 +08:00
    1  2  3  4  5  
    shylocks
        401
    shylocks  
       2020-10-14 12:29:11 +08:00
    支持
    bbb001
        402
    bbb001  
       2020-10-14 12:39:49 +08:00
    👍
    Seayon
        403
    Seayon  
       2020-10-14 12:45:49 +08:00 via iPhone   ❤️ 1
    已成功安利同事
    geekboy
        404
    geekboy  
       2020-10-14 12:47:44 +08:00 via Android
    支持一下
    silence5555
        405
    silence5555  
       2020-10-14 12:49:23 +08:00   ❤️ 1
    支持一下 很棒的插件
    gejun123456
        406
    gejun123456  
    OP
       2020-10-14 13:08:25 +08:00
    @JssDream #308 第 28 组用户名连接串为:EricFutureromisanicdoudou1523102buslnJssDreamBluesChangleonmezypy333zhou00didala
    ,中奖用户为: @JssDream,请添加微信 gejun12311 联系我,会发激活码给您
    gejun123456
        407
    gejun123456  
    OP
       2020-10-14 13:08:43 +08:00
    @freedom61 #318 第 29 组用户名连接串为:shwintanfreedom61RedKingguanhui07hanhuoerMikeCordenCrysewillxianghuyuankunlzy250
    ,中奖用户为: @freedom61,请添加微信 gejun12311 联系我,会发激活码给您
    gejun123456
        408
    gejun123456  
    OP
       2020-10-14 13:09:00 +08:00
    @zirconium #336 第 30 组用户名连接串为:yaming116kakeiricyleexoneisall8955woscaiziJason0803itsmileliqiuzirconiumsudar233
    ,中奖用户为: @zirconium,请添加微信 gejun12311 联系我,会发激活码给您
    gejun123456
        409
    gejun123456  
    OP
       2020-10-14 13:09:18 +08:00
    @j6l #347 第 31 组用户名连接串为:tubimaskynosayyinusxxxxwwwaaadddsx258admin7785vate32deepmindlabxfabsj6l
    ,中奖用户为: @j6l,请添加微信 gejun12311 联系我,会发激活码给您
    gejun123456
        410
    gejun123456  
    OP
       2020-10-14 13:09:43 +08:00
    @JunoNin #355 第 32 组用户名连接串为:scofulcwr31lingthcAprilNovemberTangkimari967182JunoNinsetnxlovemaoyun
    ,中奖用户为: @JunoNin,请添加微信 gejun12311 联系我,会发激活码给您
    gejun123456
        411
    gejun123456  
    OP
       2020-10-14 13:09:59 +08:00
    @zzlhr #367 第 33 组用户名连接串为:liutianfengyutian2211ZeroKillWEARE9201wunaidouziacrisliuzuijiu94lijianivy123Bellyzzlhr
    ,中奖用户为: @zzlhr,请添加微信 gejun12311 联系我,会发激活码给您
    gejun123456
        412
    gejun123456  
    OP
       2020-10-14 13:10:17 +08:00
    @uestc #368 第 34 组用户名连接串为:uestcduhongleNibborQbillwanghoobieTateLiaoadrianXuldw4033LkaiyDetectiveBoy
    ,中奖用户为: @uestc,请添加微信 gejun12311 联系我,会发激活码给您
    gejun123456
        413
    gejun123456  
    OP
       2020-10-14 13:10:36 +08:00
    @glaucus #382 第 35 组用户名连接串为:EdwardXiaPendragonzcmxw1glaucusCyronzhoufan5817leebsqfphoenixtsukiikekaoruArthurKing
    ,中奖用户为: @glaucus,请添加微信 gejun12311 联系我,会发激活码给您
    gejun123456
        414
    gejun123456  
    OP
       2020-10-14 13:10:56 +08:00
    @wanniwa #398 第 36 组用户名连接串为:Blulotusyxssfxwzyshell314artifactzhang5388137Joenglsorrowboyxy120jiomwanniwa
    ,中奖用户为: @wanniwa,请添加微信 gejun12311 联系我,会发激活码给您
    accppd
        415
    accppd  
       2020-10-14 13:18:36 +08:00 via Android
    占位支持一下
    fulinlin9527
        416
    fulinlin9527  
       2020-10-14 13:21:18 +08:00 via Android   ❤️ 1
    支持 一直在用
    KevinBlandy
        417
    KevinBlandy  
       2020-10-14 13:40:55 +08:00
    挺好,支持一下。
    some3284
        418
    some3284  
       2020-10-14 13:51:42 +08:00
    支持
    HashubYC
        419
    HashubYC  
       2020-10-14 14:11:47 +08:00 via Android
    试试
    senup
        420
    senup  
       2020-10-14 15:00:04 +08:00 via Android
    来了
    Fereke
        421
    Fereke  
       2020-10-14 15:04:50 +08:00 via Android
    支持一下
    qnyh
        422
    qnyh  
       2020-10-14 15:21:47 +08:00
    支持
    SuperXRay
        423
    SuperXRay  
       2020-10-14 15:45:27 +08:00
    确实好用
    javen73
        424
    javen73  
       2020-10-14 15:51:25 +08:00
    支持一下
    watermelon11
        425
    watermelon11  
       2020-10-14 15:52:16 +08:00
    支持~
    night98
        426
    night98  
       2020-10-14 16:15:24 +08:00
    支持一下
    russ44
        427
    russ44  
       2020-10-14 16:25:05 +08:00
    free 版用户
    remember5
        428
    remember5  
       2020-10-14 16:26:29 +08:00
    支持一下
    gejun123456
        429
    gejun123456  
    OP
       2020-10-14 17:48:17 +08:00
    @lxfcool #399 第 37 组用户名连接串为:lxfcoolben0629shylocksbbb001Seayongeekboysilence5555accppdfulinlin9527KevinBlandy
    ,中奖用户为: @lxfcool,请添加微信 gejun12311 联系我,会发激活码给您
    gejun123456
        430
    gejun123456  
    OP
       2020-10-14 17:48:49 +08:00
    @senup #420 第 38 组用户名连接串为:some3284HashubYCsenupFerekeqnyhSuperXRayjaven73watermelon11night98russ44
    ,中奖用户为: @senup,请添加微信 gejun12311 联系我,会发激活码给您
    maysixteenth
        431
    maysixteenth  
       2020-10-14 17:55:49 +08:00
    加油
    ylsf
        432
    ylsf  
       2020-10-14 18:57:25 +08:00
    加油!
    liuqitoday
        433
    liuqitoday  
       2020-10-14 19:26:30 +08:00 via iPhone
    支持
    ize
        434
    ize  
       2020-10-14 21:52:07 +08:00
    支持一下
    gejun123456
        435
    gejun123456  
    OP
       2020-10-15 10:17:49 +08:00
    @Tang #352 大部分功能所有数据库都支持,少部分如表生成 crud 常用的都支持的 mysql oracle postgresql sqlserver
    ingdawn
        436
    ingdawn  
       2020-10-16 10:22:02 +08:00
    还有分子嘛
    gejun123456
        437
    gejun123456  
    OP
       2020-10-16 10:37:53 +08:00
    @ingdawn #436 满 10 个就行
    devswork
        438
    devswork  
       2020-10-16 10:55:14 +08:00
    还有位置吗~~~~
    zzlhr
        439
    zzlhr  
       2020-10-16 11:21:58 +08:00
    在 v 站第一次中奖哈哈哈
    Rush9999
        440
    Rush9999  
       2020-10-16 13:49:36 +08:00
    分母
    hengo
        441
    hengo  
       2020-10-16 16:21:05 +08:00
    分子
    XDJI
        442
    XDJI  
       2020-10-16 17:57:25 +08:00
    分数线
    Gav1n1995
        443
    Gav1n1995  
       2020-10-16 18:18:38 +08:00
    确实好用
    gejun123456
        444
    gejun123456  
    OP
       2020-10-16 19:14:46 +08:00
    @liuqitoday #433 第 39 组用户名连接串为:remember5maysixteenthylsfliuqitodayizeingdawndevsworkRush9999hengoXDJI
    ,中奖用户为: @liuqitoday,请添加微信 gejun12311 联系我,会发激活码给您
    h503mc
        445
    h503mc  
       2020-10-16 19:19:39 +08:00 via Android
    分子
    Kinnice
        446
    Kinnice  
       2020-10-16 19:35:56 +08:00 via Android
    支持一下
    fireSoil
        447
    fireSoil  
       2020-11-03 17:57:57 +08:00
    支持一下
    x940727
        448
    x940727  
       2020-11-04 17:36:11 +08:00
    支持一下
    1  2  3  4  5  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3583 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 04:44 · PVG 12:44 · LAX 21:44 · JFK 00:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.