美文网首页
Mybatis Generator自动生成代码

Mybatis Generator自动生成代码

作者: daoshud1 | 来源:发表于2017-08-28 21:55 被阅读0次

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

1、下载Mybatis Generator

关于Mybatis-Generator的下载可以到这个地址:https://github.com/mybatis/generator/releases
由于我使用的是Mysql数据库,这里需要在准备一个连接mysql数据库的驱动jar包
对下载的压缩包进行解压,解压后在lib目录下有三个jar文件,分别为:
mybatis-generator-core-1.3.5.jar、mybatis-generator-core-1.3.5-javadoc.jar、mybatis-generator-core-1.3.5-sources.jar

2、Mybatis Generator使用

2.1、generatorConfig.xml 配置详解

和Hibernate逆向生成一样,这里也需要一个配置文件:
generatorConfig.xml

<?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.0.8-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/mymessages" userId="root" password="root">
        </jdbcConnection>
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <!--生成Model类存放位置-->
        <javaModelGenerator targetPackage="lcw.model" targetProject="src">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!--生成映射文件存放位置-->
        <sqlMapGenerator targetPackage="lcw.mapping" targetProject="src">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>
        <!--生成Dao类存放位置-->
        <javaClientGenerator type="XMLMAPPER" targetPackage="lcw.dao" targetProject="src">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>
        <!--生成对应表及类名-->
        <table tableName="message" domainObjectName="Messgae" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
    </context>
</generatorConfiguration>

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

<table tableName="message" domainObjectName="Messgae" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>

tableName和domainObjectName为必选项,分别代表数据库表名和生成的实力类名,其余的可以自定义去选择(一般情况下均为false)
注意事项:targetProject="src" 必须提前创建好;
附:mysql jdbc驱动下载地址https://dev.mysql.com/downloads/connector/j/5.0.html

2.2、使用

配置好之后如何来使用GeneratorConfig.xml,使用以下命令即可进行执行创建操作;

java -jar mybatis-generator-core-1.3.2.jar -configfile generatorConfig.xml -overwrite

也可将上述命令写入txt文档,将后缀名改为.bat,保存后双击运行即可;
注意:格式为UTF-8
截止到这里,Mybatis Generator的初步使用到一段落;

相关文章

网友评论

      本文标题:Mybatis Generator自动生成代码

      本文链接:https://www.haomeiwen.com/subject/nocndxtx.html