前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Mybatis-Generator自动生成Dao接口、Model、Mapping映射文件文件

使用Mybatis-Generator自动生成Dao接口、Model、Mapping映射文件文件

作者头像
浩Coding
发布2019-07-03 14:35:22
1.5K1
发布2019-07-03 14:35:22
举报
文章被收录于专栏:浩Coding

Mybatis属于半自动ORM框架,在使用过程中,工作量最大的就是书写Mapping的映射文件,由于手动书写很容易出错,我们可以利用Mybatis-Generator来帮我们自动生成文件。

MyBatis Generator有三种常用方法自动生成代码:命令行Eclipse插件Maven插件。下面我将一一介绍这三种方法。

一 使用命令行生成

1.准备相关JAR包

需要准备的JAR包:mysql-connector-java-5.1.45-bin.jar和mybatis-generator-core-1.3.6.jar

(http://mvnrepository.com/artifact/org.mybatis.generator/mybatis-generator-core/1.3.6)。

2.创建文件目录

在某磁盘根目录下新建一个文件目录。如,D:\generator。并将mysql-connector-java-5.1.45-bin.jar和mybatis-generator-core-1.3.6.jar文件复制到generator目录下。另外,在generator目录下,创建src子目录存放生成的相关代码文件。

3.创建配置文件

在第二步创建的文件目录(D:\generator)下创建配置文件,如D:\generator\generator.xml。文件目录如图所示:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
  PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
  "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
    <!--数据库驱动-->
    <classPathEntry    location="mysql-connector-java-5.1.22-bin.jar"/>
    <context id="DB2Tables"    targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>
        <!--数据库链接地址账号密码-->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/springtest?characterEncoding=utf8" userId="root" password="root">
        </jdbcConnection>
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <!--生成Model类存放位置-->
        <javaModelGenerator targetPackage="com.po" targetProject="src">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!--生成映射文件存放位置-->
        <sqlMapGenerator targetPackage="com.mapping" targetProject="src">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>
        <!--生成Dao类存放位置-->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.dao" targetProject="src">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>
        <!--生成对应表及类名-->
        <table tableName="user" domainObjectName="Messgae" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
    </context>
</generatorConfiguration>

需要修改文件配置的地方我都已经把注释标注出来了,这里的相关路径(如数据库驱动包,生成对应的相关文件位置可以自定义)不能带有中文。

4.使用命令生成代码

打开命令提示符,进入D:\generator,输入命令:java -jar mybatis-generator-core-1.3.6.jar -configfile generator.xml –overwrite,具体命令随jar版本改变,如下所示:

代码语言:javascript
复制
java -jar mybatis-generator-core-1.3.6.jar -configfile generator.xml –overwrite

小技巧:Windows系统下,在该目录按住Shift键,右键鼠标选择"在此处打开命令窗口",复制粘贴生成语句的文件代码即可。

成功生成所需文件:

二 在Eclipse中使用Mybatis-Generator

我们这里举一个实例来看看。

1、新建一个项目mybatis-generator:

导入所需jar包,同上一小节:

2、下载Mybatis Generator 1.3.5插件:

Help --> Eclipser Marketplace中查找:Mybatis Generator 安装

最后可能有同意服务条款之类的,选择Accept然后Finish即可。

3、新建Mybatis Generator Configuration File

New--other--输入Mybatis查找如下:

选择好后,点击Finish即生成generatorConfig.xml

4、配置generatorConfig.xml

同上一小节讲述的用命令行生成,注意,一定要提前新建好项目和包,且在文件中指明导出到哪个项目:

代码语言:javascript
复制
<!-- targetProject:生成PO类的位置 -->
    <javaModelGenerator targetPackage="com.hao.pojo"
      targetProject="mybatis-generator/src">
      <!-- enableSubPackages:是否让schema作为包的后缀 -->
      <property name="enableSubPackages" value="false" />
      <!-- 从数据库返回的值被清理前后的空格 -->
      <property name="trimStrings" value="true" />
    </javaModelGenerator>
    <!-- targetProject:mapper映射文件生成的位置 -->
    <sqlMapGenerator targetPackage="com.hao.mapper"
      targetProject="mybatis-generator/src">
      <!-- enableSubPackages:是否让schema作为包的后缀 -->
      <property name="enableSubPackages" value="false" />
    </sqlMapGenerator>
    <!-- targetPackage:mapper接口生成的位置 -->
    <javaClientGenerator type="XMLMAPPER"
      targetPackage="com.hao.dao" targetProject="mybatis-generator/src">
      <!-- enableSubPackages:是否让schema作为包的后缀 -->
      <property name="enableSubPackages" value="false" />
    </javaClientGenerator>

5、用Eclipse插件开始生成

generatorConfig.xml --> 右键 --> Run As :

导出成功:

用Maven插件生成代码,和Eclipse生成大同小异,等后面出了Maven教程后补上此章!

本教程所有源码地址:

https://github.com/jiahaoit/tool

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-04-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 浩Coding 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档