springboot整合mybatisGenerator并设置不生成Example文件,dao实现通用mapper接口

首先在pom中引入jar包

 <build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <fork>true</fork>
            </configuration>
        </plugin>
        <!--mybatis自动生成代码插件-->
        <plugin>
             <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.6</version>
                <configuration>
                    <!-- 是否覆盖,true表示会替换生成的JAVA文件,false则不覆盖 -->
                    <overwrite>true</overwrite>
                </configuration>
                <dependencies>
                    <!--postgresql驱动包-->
                    <dependency>
                        <groupId>org.postgresql</groupId>
                        <artifactId>postgresql</artifactId>
                        <version>42.2.5</version>
                    </dependency>
                    <!--代码工具生成需要 -->
                    <dependency>
                        <groupId>tk.mybatis</groupId>
                        <artifactId>mapper</artifactId>
                        <version>3.4.2</version>
                    </dependency>
                </dependencies>
        </plugin>
    </plugins>
</build>

在resources文件夹下添加配置文件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>
       <!-- defaultModelType="flat" 设置复合主键时不单独为主键创建实体 -->
       <context id="Postgres" defaultModelType="flat">

            <property name="javaFileEncoding" value="UTF-8"/>
            <plugin type="tk.mybatis.mapper.generator.MapperPlugin">
                <property name="mappers" value="tk.mybatis.mapper.common.Mapper"/>
                <!-- caseSensitive默认false,当数据库表名区分大小写时,可以将该属性设置为true -->
                 <property name="caseSensitive" value="false"/>
           </plugin>

             <!--注释-->
        <commentGenerator>
            <property name="addRemarkComments" value="true"/><!-- 将数据库中表的字段描述信息添加到注释 -->
            <property name="suppressAllComments" value="false"/><!-- 是否取消注释 -->
            <property name="suppressDate" value="false" /> <!-- 是否生成注释代时间戳-->
        </commentGenerator>

        <!-- 数据库连接 -->
        <jdbcConnection
        driverClass="org.postgresql.Driver"
        connectionURL="jdbc:postgresql://你的地址:5432/db_work_log"
        userId="你的账号"
        password="你的密码"/>

         <!-- 类型转换 -->
        <javaTypeResolver>
            <!-- 是否使用bigDecimal, false可自动转化以下类型(Long, Integer, Short, etc.)                         -->
            <property name="forceLong" value="false"/>
        </javaTypeResolver>

         <!-- 生成POJO对象,并将类放到com.songguoliang.springboot.entity包下 -->
        <javaModelGenerator targetPackage="com.wulianwang.manage.model.log"     targetProject="src/gen/java"></javaModelGenerator>
        <!-- 生成mapper xml文件,并放到resources下的mapper文件夹下 -->
        <sqlMapGenerator targetPackage="mappers/log"  targetProject="src/gen/java/resources">
          <!-- 是否在当前路径下新加一层schema,eg:fase路径com.oop.eksp.user.model, true:com.oop.eksp.user.model.[schemaName] -->
            <property name="enableSubPackages" value="false" />
        </sqlMapGenerator>

        <!-- 生成mapper xml对应dao接口,放到com.songguoliang.springboot.mapper包下-->
        <javaClientGenerator targetPackage="com.wulianwang.manage.mapper.log"     targetProject="src/gen/java" type="XMLMAPPER"></javaClientGenerator>


        <!--不生成帮助类(Exmaples) -->
        <!-- enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" -->
                <!-- table标签可以有多个,至少一个,tableName指定表名,可以使用_和%通配符 -->
               <table tableName="tb_%"
               enableInsert="false"
               enableDeleteByPrimaryKey="false"
               enableSelectByPrimaryKey="true"
               enableUpdateByPrimaryKey="false"
               enableCountByExample="false"
               enableDeleteByExample="false"
               enableSelectByExample="false"
               enableUpdateByExample="false">
            <!-- 数据库中表名有时我们都会带个前缀,而实体又不想带前缀,这个配置可以把实体的前缀去掉 -->
            <domainObjectRenamingRule searchString="^Tb" replaceString=""/>
        </table>
    </context>
</generatorConfiguration>


需要先创建好文件夹

运行,双击这个

猜你喜欢

转载自blog.csdn.net/qq_38279833/article/details/89640064
今日推荐