首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
华为云
V2EX  ›  Java

开源一款 IDEA 下 Mybatis 代码生成插件——Yobatis。

  •  
  •   linbiaye · 5 天前 · 1282 次点击

    这是一款基于 MybatisGenerator 的插件,我们已经在生产环境使用了快一年了。封装后,使得配置 /使用更简单,表结构发生变更以后只需要重新生成即可,Yobatis 会根据变更自动添加 /删除字段。只需要如下图配置一下就可以为 mysql 表生成代码: 配置

    代码生成前:
    配置

    代码生成后:
    配置

    项目地址: https://github.com/linbaiye/yobatis
    详细介绍: https://linbaiye.github.io/yobatis-tour/

    20 回复  |  直到 2018-11-13 19:35:24 +08:00
        1
    wangcansun   5 天前   ♥ 1
    点个赞,以前做 Java 开发的时候也使用过国人开发的一款 mybatis 的插件,挺好用的
        2
    qiyuey   5 天前
    考虑支持注解吗
        3
    choice4   5 天前 via Android
    请问有 xml 跳转吗?
        4
    heirenhua   5 天前 via Android   ♥ 1
    支持
        5
    linbiaye   5 天前
    @choice4 支持 java 和 xml 之间跳转的。
        6
    linbiaye   5 天前
    @qiyuey 注解的问题在于处理动态 sql 比较乏力,比如用 xml 的:
    ```
    List<Employee> list = employeeDao.selectList(EmployeeCriteria.nameEqualTo("Alice").andPhoneIsNotNull());
    ```
    以及
    ```
    List<Employee> list = employeeDao.selectList(EmployeeCriteria.idIsNotNull());
    ```
    用注解就需要 2 个方法,写 2 个 sql.
        7
    q397064399   4 天前
    idea 的插件开发有没有 好的参考文档,官方那个文档有点玄乎
        8
    EXChen   4 天前 via iPhone
    有空试一下。
        9
    gejun123456   4 天前
    棒,我的插件也支持 https://github.com/gejun123456/MyBatisCodeHelper-Pro 可以试试

    github 上传的代码 貌似是 js 的,没看到 java 代码。
        10
    linbiaye   4 天前
    @q397064399 唔,他们家的已经算是很好了。我就是官方文档+论坛跟着来做,eclipse 才是入门到放弃。。
        11
    linbiaye   4 天前
    @gejun123456 就在旁边 yobatis-idea 下
        12
    linbiaye   4 天前
    @EXChen 欢迎试用,核心其实还是 Mybatis-Generator,已经在我们生产用了一年了。
        13
    gmywq0392   4 天前
    支持。另外,插件可用吗?如果要生成 Lombok 那样的 entity 呢?
        14
    linbiaye   4 天前
    @gmywq0392 可能要能用才开源呀。暂时不支持 Lombok 那样,entity 里面就只有 getter setter
        15
    snipersong   4 天前
    mark
        16
    qiyuey   3 天前 via Android
    @linbiaye 注解的优势在于可读性和内聚性,动态 SQL 的场景并不多,有 script 和 provider 也完全可以支撑
        17
    linbiaye   3 天前
    @qiyuey 那暂时不支持哦。一些简单的操作是可以用注解,但是复杂的写在注解里面是没法看的, 我们更倾向于 xml 是因为 xml 里面读起来更直观,更连贯; provider 里面调用各种方法去拼接比较影响阅读。另外新同学觉得学习成本更低。
        18
    qiyuey   3 天前
    @linbiaye 我感觉注解更直观
        19
    choice4   3 天前
    似乎并不支持 java, xml 跳转 idea 18.2.5, yobatis 2.13
        20
    linbiaye   3 天前
    @choice4 请问下是在生成的 interface 旁边没有跳转么? java 和 xml 的跳转开生成的 interface 文件或者 xml 文件才能开到。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   732 人在线   最高记录 3821   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.1 · 18ms · UTC 19:45 · PVG 03:45 · LAX 11:45 · JFK 14:45
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1