暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

后端开发使用generator插件结合tk.mybatis自动生成mapper

IT那活儿 2024-12-31
148
点击上方“IT那活儿”公众号--专注于企业全栈运维技术分享,不管IT什么活儿,干就完了!!!  

  
当我们后端开发时会有大量创建表格、并对表格进行增删改查的操作,MyBatis Generator 是一款针对 MyBatis 或 iBATIS 设计的代码生成器。
本文介绍generator结合tk.mybatis的配置与使用以及使用效果,其中包含了具体的操作截图实例。



配置过程

1.1 在resources文件夹下创建一个目录builder

在目录builder下创建文件generatorConfig.xml(此处的目录名可任意取)

1.2 在pom.xml中引入mybatis-generator插件
注意,这里我使用的是tk.mybatis,所以需要引入相应的依赖。
1.3 配置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>
    <!--<properties resource="dev.properties"/>-->
    <contextid="mysql"targetRuntime="MyBatis3Simple"defaultModelType="flat">
        <propertyname="beginningDelimiter"value="`"/>
        <propertyname="endingDelimiter"value="`"/>
        <plugintype="tk.mybatis.mapper.generator.MapperPlugin">
            <!-- 这里是项目包下的一个类-->
            <propertyname="mappers"value="com.xxxx.common.BaseMapper"/>
        </plugin>
      <commentGenerator>
         <!-- 是否去除自动生成的注释 true:是 : false:否 -->
         <propertyname="suppressAllComments"value="true" />
      </commentGenerator>
      <!--数据库连接的信息:驱动类、连接地址、用户名、密码 -->
      <jdbcConnectiondriverClass="com.mysql.cj.jdbc.Driver"
         connectionURL="jdbc:mysql://0.0.0.0:3306/mysql_name"
         userId="xxxx"
         password="xxxx">

      </jdbcConnection>
      <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和
         NUMERIC 类型解析为java.math.BigDecimal -->

      <javaTypeResolver>
         <propertyname="forceBigDecimals"value="true" />
      </javaTypeResolver>
      <!-- targetProject:生成PO类的位置 -->
        <javaModelGeneratortargetPackage="${targetModelPackage}"  targetProject="${targetJavaProject}">
           <!-- enableSubPackages:是否让schema作为包的后缀 -->
         <propertyname="enableSubPackages"value="false" />
         <!-- 从数据库返回的值被清理前后的空格 -->
         <propertyname="trimStrings"value="true" />
        </javaModelGenerator>
      <!-- targetProject:mapper映射文件生成的位置 -->
        <sqlMapGeneratortargetPackage="${targetXMLPackage}"  targetProject="${targetResourcesProject}">
           <!-- enableSubPackages:是否让schema作为包的后缀 -->
         <propertyname="enableSubPackages"value="false" />
        </sqlMapGenerator>
      <!-- targetPackage:mapper接口生成的位置 -->
        <javaClientGeneratortargetPackage="${targetMapperPackage}"targetProject="${targetJavaProject}"type="XMLMAPPER">
           <!-- enableSubPackages:是否让schema作为包的后缀 -->
         <propertyname="enableSubPackages"value="false" />
        </javaClientGenerator>
        <tableschema=""tableName="table_name">
         <!-- 如果设置为true,生成的model类会直接使用column本身的名字,而不会再使用驼峰命名方法,
         比如BORN_DATE,生成的属性名字就是BORN_DATE,而不会是bornDate -->

         <!--<property name="useActualColumnNames" value="true"/>-->
      </table>
    </context>
</generatorConfiguration>

1.4 pom.xml文件配置好实体类,接口类的位置
1.5 创建BaseMapper.java文件

使用

双击mybatis-generator插件下的mybatis-generator:generate指令,开始自动构建。

构建完成后,项目中就多了entity、dao、mapper。

然后就可以对生成的mapper.xml文件进行单独的开发和二次修改了。


END


本文作者:刘首江(上海新炬中北团队)

本文来源:“IT那活儿”公众号

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论