IDEA 通过generator自动生成实体类、dao以及mapper文件

IDEA 通过generator自动生成实体类、dao以及mapper文件

这个配置看似简单,还是踩了很多的坑,百度了一圈,总算把所有的问题都解决了,所以写个文档记录一下,把所有踩的坑和解决的方法都写一下,防止忘了

步骤

  • 在pom.xml文件中导入mybatis generator 自动生成代码插件
		<plugin>
                <groupId>org.mybatis.generatorgroupId>
                <artifactId>mybatis-generator-maven-pluginartifactId>
                <version>1.3.1version>
                <configuration>
                    <configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xmlconfigurationFile>
                    <overwrite>trueoverwrite>
                    <verbose>trueverbose>
                configuration>
               
            plugin>
  • 在resources先新建generator/generatorConfiguration.xml文件,进行如下配置,该配置是自定义的,可以根据自己的需求进行定义,百度下语法进行下改造:


<generatorConfiguration>
    
    <classPathEntry  location="D:\maven\mvnrepository\mysql\mysql-connector-java\8.0.17\mysql-connector-java-8.0.17.jar"/>
    <context id="mysql" targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            
            <property name="suppressAllComments" value="true"/>
        commentGenerator>
        
        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/vue_shop" userId="root" password="123456">
        jdbcConnection>
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        javaTypeResolver>
        
        <javaModelGenerator targetPackage="com.hwh.vue_demo.entity" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        javaModelGenerator>
        
        <sqlMapGenerator targetPackage="mapping" targetProject="src/main/resources">
            <property name="enableSubPackages" value="true"/>
        sqlMapGenerator>
        
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.hwh.vue_demo.mapper" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
        javaClientGenerator>
        

        <table schema="" tableName="users" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" >table>

    context>
generatorConfiguration>
  • 打开maven窗口,运行即可
    IDEA 通过generator自动生成实体类、dao以及mapper文件_第1张图片

整合lombok

因为使用ombok可以使代码更加的简洁,所以百度了一圈,找到了整合的方法

  • 下载 mybatis-generator-lombok-plugin插件
    github网址
    https://github.com/GuoGuiRong/mybatis-generator-lombok-plugin/blob/master/README.md
    可以通过git clone的方式下载到自己放置项目的文件夹中
  • 启动之后,然后使用maven clean install将这个项目添加到Maven仓库里去
  • IDEA 通过generator自动生成实体类、dao以及mapper文件_第2张图片
  • pom.xml文件配置
<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-maven-pluginartifactId>
            plugin>
            
            <plugin>
            <groupId>org.mybatis.generatorgroupId>
            <artifactId>mybatis-generator-maven-pluginartifactId>
            <version>1.3.1version>
            <configuration>
                <configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xmlconfigurationFile>
                <overwrite>trueoverwrite>
                <verbose>trueverbose>
            configuration>
            <dependencies>
                <dependency>
                    <groupId>com.chrmgroupId>
                    <artifactId>mybatis-generator-lombok-pluginartifactId>
                    <version>1.0-SNAPSHOTversion>
                dependency>
            dependencies>

        plugin>
        plugins>
    build>
  • 在generatorConfiguration.xml加入如下配置
    IDEA 通过generator自动生成实体类、dao以及mapper文件_第3张图片
  • 大功告成

解决生成的mapping中的.xml文件出现代码重复的问题

  • 在schema中加入数据库的名称

在这里插入图片描述

  • 然后再数据库的连接中加入如下配置,完美解决

在这里插入图片描述

你可能感兴趣的:(java,idea,intellij,idea)