在java工程中使用mybatis-generator-plugin

胡阳辉 | 394 | 2024-12-11

1.在https://mvnrepository.com/网站,查找mybatis-generator-core,选择使用相应的版本。



image.png


选择相应的版本



image.png


<!-- https://mvnrepository.com/artifact/org.mybatis.generator/mybatis-generator-core -->
<dependency>
    <groupId>org.mybatis.generator</groupId>
    <artifactId>mybatis-generator-core</artifactId>
    <version>1.4.2</version>
</dependency>

复制

2.在工程的pom.xml中的<build>标签中添加插件

 <plugins>
      <!--mybatis-generator-->
      <plugin>
        <groupId>org.mybatis.generator</groupId>
        <artifactId>mybatis-generator-maven-plugin</artifactId>
        <version>1.4.2</version>
        <dependencies>

          <dependency>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-core</artifactId>
            <version>1.4.2</version>
          </dependency>
          <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.33</version>
          </dependency>
        </dependencies>
        <configuration>
          <overwrite>true</overwrite>
        </configuration>
      </plugin>
    </plugins>复制

3.在resources文件夹下创建generatorConfig.xml文件,具体相置信息可以查看官方文件: https://mybatis.org/generator/index.html

<?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>
    <context id="MySQLTables" targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>
        <!--配置数据库连接信息-->
        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/tmalldemodb"
                        userId="root"
                        password="root123">
        </jdbcConnection>

        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>

        <javaModelGenerator targetPackage="com.csnf.entity" targetProject="src\main\java">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>

        <sqlMapGenerator targetPackage="com.csnf.mapper" targetProject="src\main\java">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>

        <javaClientGenerator type="XMLMAPPER" targetPackage="com.csnf.mapper" targetProject="src\main\java">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>

        <table tableName="category" domainObjectName="Category">
            <property name="useActualColumnNames" value="true"/>
            <generatedKey column="ID" sqlStatement="MySql" identity="true"/>
        </table>
        <table tableName="product" domainObjectName="Product">
            <property name="useActualColumnNames" value="true"/>
            <generatedKey column="ID" sqlStatement="MySql" identity="true"/>
        </table>

    </context>
</generatorConfiguration>复制

jdbcConnection标签:配置数据库连接信息

 <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/tmalldemodb"
                        userId="root"
                        password="root123">
        </jdbcConnection>


复制

javaTypeResolver标签:配置JDBC2JAVA的类型转换器

   <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>复制

javaModelGenerator标签:配置生成的模型对象的规划,包括存放位置

 <javaModelGenerator targetPackage="com.csnf.entity" targetProject="src\main\java">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>复制

sqlMapGenerator标签:配置Mapper接口及其实现文件(xml)

 <sqlMapGenerator targetPackage="com.csnf.mapper" targetProject="src\main\java">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>复制

javaClientGenerator标签:客户端生成器的配置信息,包括生成的Mapper代码类型,存放的目标位置。type="XMLMAPPER"是表示生成mapper.xml文件,其配置的值有ANNOTATEDMAPPER、XMLMAPPER、MIXEDMAPPER

 <javaClientGenerator type="XMLMAPPER" targetPackage="com.csnf.mapper" targetProject="src\main\java">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>复制

table标签:指定要生成Mapper代码的表,包括表名、对象名。

 <table tableName="category" domainObjectName="Category">
            <property name="useActualColumnNames" value="true"/>
            <generatedKey column="ID" sqlStatement="MySql" identity="true"/>
        </table>复制

4.双击mybatis-generator:generate,执行插件。



image.png


5.执行的结果



image.png


文章标签: javamysql
推荐指数:

真诚点赞,手留余香

在java工程中使用mybatis-generator-plugin

加载中...

关于作者

胡阳辉

这个人很懒~

等级 LV1

粉丝 1

获赞 4

经验 10

推荐标签

编程语言 系统维护 mysql java 计算机硬件 平台通知 UML 考试通知

在java工程中使用mybatis-generator-plugin

评论