zoukankan      html  css  js  c++  java
  • mybatis-generator逆向工程自动生成mapper

    说明:配置文件只注释了用到的功能,如果需要详细的说明,可以前往官网:https://mybatis.org/generator/

    第一步:引入依赖和插件

        <dependency>
          <groupId>org.mybatis.generator</groupId>
          <artifactId>mybatis-generator-core</artifactId>
          <version>1.3.5</version>
        </dependency>
    <plugins>
          <plugin>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-maven-plugin</artifactId>
            <version>1.3.5</version>
            <dependencies>
              <dependency>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-core</artifactId>
                <version>1.3.5</version>
              </dependency>
              <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.38</version>
              </dependency>
            </dependencies>
            <executions>
              <execution>
                <id>mybatis  generator</id>
                <phase>package</phase>
                <goals>
                  <goal>generate</goal>
                </goals>
              </execution>
            </executions>
            <configuration>
              <!--配置文件的位置-->
              <configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
              <!--           允许移动生成的文件 -->
              <verbose>true</verbose>
              <!--            是否覆盖-->
              <overwrite>true</overwrite>
            </configuration>
          </plugin>
        </plugins>

    其中插件需要和标签pluginManagement同级,不要在其内部写,会报错,正确的应该是这样:

     第二步:添加配置文件

    需要修改其中的部分参数,例如数据库连接参数、mapper存放的位置等。

    <?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="/Program Files/IBM/SQLLIB/java/db2java.zip" />-->
    
        <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://127.0.0.1/db_czams"
                            userId="root"
                            password="">
            </jdbcConnection>
    
            <javaTypeResolver >
                <property name="forceBigDecimals" value="false" />
            </javaTypeResolver>
    
    
            <!--生成的DataObject类存放位置(pojo)-->
            <javaModelGenerator targetPackage="com.czams.core.pojo" targetProject="src/main/java">
                <property name="enableSubPackages" value="true" />
                <property name="trimStrings" value="true" />
            </javaModelGenerator>
    
            <!--        生成的映射文件存放位置-->
            <sqlMapGenerator targetPackage="mapper"  targetProject="src/main/resources">
                <property name="enableSubPackages" value="true" />
            </sqlMapGenerator>
    
            <!--        生成的DAO所在位置-->
            <javaClientGenerator type="XMLMAPPER" targetPackage="com.czams.core.mapper"  targetProject="src/main/java">
                <property name="enableSubPackages" value="true" />
            </javaClientGenerator>
            <!--        生成对应表及表格-->
            <!--        <table schema="DB2ADMIN" tableName="ALLTYPES" domainObjectName="Customer" >-->
            <!--            <property name="useActualColumnNames" value="true"/>-->
            <!--            <generatedKey column="ID" sqlStatement="DB2" identity="true" />-->
            <!--            <columnOverride column="DATE_FIELD" property="startDate" />-->
            <!--            <ignoreColumn column="FRED" />-->
            <!--            <columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" />-->
            <!--        </table>-->
    <table tableName="tb_arch_type" domainObjectName="ArchTypeDao" enableCountByExample="false" enableDeleteByExample="false" enableUpdateByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table> </context> </generatorConfiguration>

    第三步:运行插件

    如果第一步成功添加插件,那么在idea中可以直接运行自动生成插件

     补充:多模块系统下的使用

    如果系统是用maven构建的多模块系统,那么可能出现这种情况:接口和java对象不在一个模块下的,这种情况也是可以用自动生成工具的。只需要将相对路径改成绝对路径即可。例如:

            <!--生成的DataObject类存放位置(pojo)-->
            <javaModelGenerator targetPackage="com.czams.core.pojo" targetProject="C:/project/src/main/java">
                <property name="enableSubPackages" value="true" />
                <property name="trimStrings" value="true" />
            </javaModelGenerator>
  • 相关阅读:
    【大数据应用技术】作业十二|Hadoop综合大作业
    【大数据应用技术】作业十一|分布式并行计算MapReduce
    【大数据应用技术】作业十|分布式文件系统HDFS 练习
    【大数据应用技术】作业九|安装关系型数据库MySQL 安装大数据处理框架Hadoop
    【大数据应用技术】作业八|爬虫综合大作业(上)
    【大数据应用技术】作业七|爬取全部的校园新闻
    【大数据应用技术】作业六|获取一篇新闻的全部信息
    【大数据应用技术】作业五|理解爬虫原理
    【大数据应用技术】作业四|中文词频统计
    大数据应用期末总作业
  • 原文地址:https://www.cnblogs.com/phdeblog/p/13305397.html
Copyright © 2011-2022 走看看