MyBatis Generator实战

MyBatis Generator介绍

MyBatis Generator (MBG) 是一个Mybatis的代码生成器 MyBatis 和 iBATIS. 他可以生成Mybatis各个版本的代码,和iBATIS 2.2.0版本以后的代码。 他可以内省数据库的表(或多个表)然后生成可以用来访问(多个)表的基础对象。 这样和数据库表进行交互时不需要创建对象和配置文件。 MBG的解决了对数据库操作有最大影响的一些简单的CRUD(插入,查询,更新,删除)操作。 您仍然需要对联合查询和存储过程手写SQL和对象。

为什么要使用 MyBatis Generator

手动编写SQL Mappper的难题
  • 时间成本高,手动编写SQL Mappper非常繁琐,几个表基本就要写半天
  • 容易出错,且编译器检测不到,甚至运行很长一段时间才发现insert语句少写了一个字段
dalgen的不足(首先申明,我只用过dalgen一次,对dalgen了解并不深入)
  1. 工程中使用dalgen需要一个单独的子模块
  2. 生成的model对象位置不能自定义(都位于dao层),导致model层甚至common层需要依赖dao层
  3. 生成的代码中不能取到数据库中的注释(个人认为model层的注释尤为重要,比如属性type,如果没有注释谁也不知道1代表什么2代表什么)
  4. 在dalgen模板中需要写大量的SQL语句
  5. 重新执行dalgen命令会完全覆盖前一次生成的代码,使得dao层的代码等同于不可编辑
  6. 不能定义ResultMap
  7. 网上资料很少
MyBatis Generator的优势
  1. MyBatis官方发布,网上资料丰富
  2. 可配置性强;可拓展性强,支持插件
  3. 配置简单,只需要一个配置文件
  4. 功能强大,对于单表操作不需要额外写任何代码(包含分页、排序)
  5. insert、update语句会生成两套,全部更新和只更新非空字段
  6. select抽离大文本(BLOB)字段,可选择是否需要查询大文本字段,提供查询效率

MyBatis Generator实战

  1. 在dao层pom.xml中添加MBG Maven支持
<build>
    <plugins>
        <plugin>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-maven-plugin</artifactId>
            <version>1.3.5</version>
            <dependencies>
                <!-- 数据库驱动  -->
                <dependency>
                    <groupId>mysql</groupId>
                    <artifactId>mysql-connector-java</artifactId>
                    <version>5.1.34</version>
           
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值