美文网首页技术收藏-开发篇
java如何让 Mybatis 自动生成代码,看完这篇工作效率提

java如何让 Mybatis 自动生成代码,看完这篇工作效率提

作者: javap | 来源:发表于2020-01-16 11:31 被阅读0次

    1 . 创建代码生成器

    • 1.1 创建Maven项目
    • 1.2 配置 generator.xml
    • 1.3 配置 pom.xml
    • 1.4 使用及测试
      在此和大家介绍一下mybatis自动生成dao层mapper,mapper.xml以及pojo类的案例方法。
      日常工作中,在使用 mybatis过程中, 当手写 JavaBeanXML 写的越来越多的时候, 就越来越同意出错。这种重复性的工作, 我们当然不希望做那么多。
      还好, mybatis 为我们提供了强大的代码生成--MybatisGenerator
      通过简单的配置, 我们就可以生成各种类型的实体类, Mapper接口, MapperXML文件, Example对象等。通过这些生成的文件, 我们就可以方便的进行单表进行增删改查的操作。
      以下的工具我们使用的都是 IDEA

    1.1创建Maven项目

    创建maven项目的话,我们就采用最基础的maven项目构建操作,利用maven最基础的骨架quickstart来创建一个maven。

    项目构建
    后续在创建中输入项目的groupId,artifactId等等细节在此就不过多的阐述了!
    创建myatis-generate
    以quickstart骨架创建的项目,我们会发现在main文件夹下没有常见的resource配置文件夹,在此也和大家讲述一下idea下创建资源文件夹的操作!
    依次点击:
    File>Project Structure >Modules
    至此就可以找到自己的项目结构,然后在相应的文件夹下构建自己的resource资源文件夹即可!
    构建resource资源文件夹

    1.2 配置 generator.xml

    这个配置文件的名称无所谓,只要和后续的第三步骤添加maven插件中的配置文件名称对应即可!

    <?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>
    
        <!-- 本地数据库驱动程序jar包的全路径 -->
        <classPathEntry location="D:\\repository\\mysql\\mysql-connector-java\\8.0.12\\mysql-connector-java-8.0.12.jar"/>
        <context id="context" targetRuntime="MyBatis3">
            <commentGenerator>
                <property name="suppressAllComments" value="false"/>
                <property name="suppressDate" value="true"/>
            </commentGenerator>
    
            <!-- 数据库的相关配置 -->
            <jdbcConnection
                    driverClass="com.mysql.jdbc.Driver"
                    connectionURL="jdbc:mysql://localhost:3306/mybatis"
                    userId="root"
                    password="root"/>
    
            <javaTypeResolver>
                <property name="forceBigDecimals" value="false"/>
            </javaTypeResolver>
    
            <!-- 实体类生成的位置 -->
            <javaModelGenerator
                    targetPackage="com.amazing.mybatis.entity"
                    targetProject=".\src\main\java">
                <property name="enableSubPackages" value="false"/>
                <property name="trimStrings" value="true"/>
            </javaModelGenerator>
    
            <!-- *Mapper.xml 文件的位置  sqlMapGenerator-->
            <sqlMapGenerator
                    targetPackage="mybatis/mapper"
                    targetProject=".\src\main\resources">
                <property name="enableSubPackages" value="false"/>
            </sqlMapGenerator>
    
            <!-- Mapper 接口文件的位置 -->
            <javaClientGenerator type="XMLMAPPER"
                                 targetPackage="com.amazing.mybatis.mapper"
                                 targetProject=".\src\main\java">
                <property name="enableSubPackages" value="false"/>
            </javaClientGenerator>
    
            <!-- 相关表的配置 -->
            <table tableName="blog" />
        </context>
    </generatorConfiguration>
    

    需要改一些内容:

    • 本地数据库驱动程序jar包的全路径(必须要改 )。
    • 数据库的相关配置(必须要改 )
    • 相关表的配置(必须要改 )
    • 实体类生成存放的位置。
    • MapperXML 生成文件存放的位置。
    • Mapper 接口存放的位置。
      如果不知道怎么改, 请看后面的配置详解 。

    1.3 配置 pom.xml

    直接在刚创建好的项目的pom文件中添加以下依赖以及插件即可
    这是我的pom.xml大家可以参考一下!

    <?xml version="1.0" encoding="UTF-8"?>
    
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
    
      <groupId>com.amazing</groupId>
      <artifactId>mybatis-generate</artifactId>
      <version>1.0-SNAPSHOT</version>
    
      <name>mybatis-generate</name>
      <!-- FIXME change it to the project's website -->
      <url>http://www.example.com</url>
    
      <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
      </properties>
    
      <dependencies>
        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>4.11</version>
          <scope>test</scope>
        </dependency>
        <dependency>
          <groupId>org.mybatis.generator</groupId>
          <artifactId>mybatis-generator-core</artifactId>
          <version>1.3.7</version>
        </dependency>
      </dependencies>
    
      <build>
        <finalName>mybatis-generator</finalName>
        <plugins>
          <plugin>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-maven-plugin</artifactId>
            <version>1.3.7</version>
            <configuration>
              <!--此处需要注意, 文件与上面的文件匹配-->
              <configurationFile>src/main/resources/generator.xml</configurationFile>
              <verbose>true</verbose>
              <overwrite>true</overwrite>
            </configuration>
            <executions>
              <execution>
                <id>Generate MyBatis Artifacts</id>
                <goals>
                  <goal>generate</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </project>
    

    需要注意的是 configurationFile 中的文件指的是 generator.xml 。因此路径写的是该文件的相对路径, 名称也跟该文件相同。
    到此, mybatis-generator 就可以使用啦。

    1.4 使用及测试

    使用构建生成dao层文件的话,直接利用idea提供的maven快捷插件方式就可以了!点击如下图所示的插件即可进行测试使用了!


    使用及测试

    相信在公司中,程序员每天都会产出非常巨大的dao层的CRUD的代码,为了节约时间,提升效率,提倡大家使用mybatis提供的逆向工程进行dao层业务的构建,当然此文章不是唯一的方法,逆向工程的使用太多了,大家可根据自己择优选择!

    相关文章

      网友评论

        本文标题:java如何让 Mybatis 自动生成代码,看完这篇工作效率提

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