mybatis-generator插件

mybatis-generator

作用:自动生成实体类,dao类,mapper.xml

使用步骤:

1.在pom.xml中添加plugin

<plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.7</version>
                <configuration>
                    <!--mybatis用于生成代码的配置文件 ;-->
                    <verbose>true</verbose>
                    <overwrite>true</overwrite>
                </configuration>
            </plugin>

2.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>
    <!--配置文件放在resources目录即可-->
    <!--数据库驱动个人配置-->
    <classPathEntry location="C:/Users/zhe/.m2/repository/mysql/mysql-connector-java/5.1.47/mysql-connector-java-5.1.47.jar"/>
    <context id="MysqlTables" targetRuntime="MyBatis3">
        <property name="autoDelimitKeywords" value="true"/>
        <property name="beginningDelimiter" value="`"/>
        <property name="endingDelimiter" value="`"/>
        <!-- optional,旨在创建class时,对注释进行控制-->
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>
        <!-- mysql数据库连接 地址账号密码--> 
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/database?useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8"
                        userId="root" password="root">
        </jdbcConnection>
        <!--非必须类型处理器,在数据库类型和java类型之间的转换控制-->
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <!-- 生成model实体类文件位置 -->
        <javaModelGenerator targetPackage="com.demo.demo.model.pojo"
                            targetProject="src/main/java">
            <!--是否允许子包,即targetPackage.schemaName.tableName-->
            <property name="enableSubPackages" value="true"/>
            <!--是否对类char类型的列的数据进行trim操作-->
            <property name="trimStrings" value="true"/>
            <!--建立的MODEL对象是否不可改变 即生成的MODEL对象不会有 setter方法,只有构造方法-->
            <property name="immutable" value="false"/>
        </javaModelGenerator>
             <!-- 生成mapper映射文件存放位置 -->
        <sqlMapGenerator targetPackage="mappers"
                         targetProject="src/main/resources">
           <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>
        <!-- 生成Dao类存放位置 -->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.demo.demo.model.dao"
                             targetProject="src/main/java" >
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>
         <!-- 需要生成的实体类对应的表名,多个实体类复制多份该配置即可 -->
        <table tableName="user" domainObjectName="USER"
               enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false"
               selectByExampleQueryId="false">
        </table>
    </context>
</generatorConfiguration>

按需修改即可,并去掉注释

3.点击生成

在idea中:右侧点击Maven Project 选择mybatis-generator:generate,双击即可
微信图片_20210224163654.png

踩坑

1.出现以下错误

[ERROR] Failed to execute goal org.mybatis.generator:mybatis-generator-maven-plugin:1.3.5:generate (default-cli) on project SSM-CRUD: XML Parser Error on line 57: 元素类型为 “context” 的内容必须匹配 “(property*,plugin*,commentGenerator?,(connectionFactory|jdbcConnection),javaTypeResolver?,javaModelGenerator,sqlMapGenerator?,javaClientGenerator?,table+)”。 -> [Help 1]
  • 原因:配置文件 generatorConfig.xml 里面的context的子元素必须按照它给出的顺序。
    当然也可能是你xml文件有错(有空行或者有注释)
  • 解决:按顺序编辑文件,去除多余空格或注释
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值