zoukankan      html  css  js  c++  java
  • 使用Mybatis-Generator自动生成Dao、Model、Mapping相关文件

      网络上的自动生成工具一搜一大把,个人比较喜欢从命令行执行的方式,并无推荐只用,只是个人保存

    1、新建一个文件夹,添加如下文件,主要就是添加两个jar包,一个配置文件generatorConfig.xml

     下载地址:http://repo1.maven.org/maven2/org/mybatis/generator/mybatis-generator-core/

    2、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.1.28-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/post" userId="root"
                password="admin">
            </jdbcConnection>
    
            <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和 
                NUMERIC 类型解析为java.math.BigDecimal -->
            <javaTypeResolver>
                <property name="forceBigDecimals" value="false" />
            </javaTypeResolver>
    
            <!-- targetProject:生成PO类的位置 -->
            <javaModelGenerator targetPackage="com.pos.po"
                targetProject=".src">
                <!-- enableSubPackages:是否让schema作为包的后缀 -->
                <property name="enableSubPackages" value="false" />
                <!-- 从数据库返回的值被清理前后的空格 -->
                <property name="trimStrings" value="true" />
            </javaModelGenerator>
            <!-- targetProject:mapper映射文件生成的位置 -->
            <sqlMapGenerator targetPackage="com.pos.mapper" 
                targetProject=".src">
                <!-- enableSubPackages:是否让schema作为包的后缀 -->
                <property name="enableSubPackages" value="false" />
            </sqlMapGenerator>
            <!-- targetPackage:mapper接口生成的位置 -->
            <javaClientGenerator type="XMLMAPPER"
                targetPackage="com.pos.mapper" 
                targetProject=".src">
                <!-- enableSubPackages:是否让schema作为包的后缀 -->
                <property name="enableSubPackages" value="false" />
            </javaClientGenerator>
            <!-- 指定数据库表  -->
            <table tableName="merchant" domainObjectName="merchant" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
            
            <!-- 有些表的字段需要指定java类型
             <table schema="" tableName="">
                <columnOverride column="" javaType="" />
            </table> -->
    
            <!-- 在cmd命令提示符中输入如下命令
            java -jar mybatis-generator-core-1.3.2.jar -configfile generatorConfig.xml -overwrite
            -->
        </context>
    </generatorConfiguration>

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

    上面配置文件中的:

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

    tableName和domainObjectName为必选项,分别代表数据库表名和生成的实力类名,其余的可以自定义去选择(一般情况下均为false)。

    3、在cmd中执行

    看下效果图

      这样你就可以将代码拷贝到项目中使用了!

     

     

  • 相关阅读:
    Apex API 请求
    Apex 的 API 简介
    Salesforce 自定义元数据类型
    Apex 中 DML 进阶知识小结
    深度学习中的Attention机制
    从FM推演各深度CTR预估模型(附代码)
    深入浅出Word2Vector原理解析
    GBDT算法用于分类问题
    特征交叉
    方差膨胀因子VIF
  • 原文地址:https://www.cnblogs.com/juniorjava/p/6962015.html
Copyright © 2011-2022 走看看