MyBaties根据generatorConfig配置文件生成映射文件

MyBaties根据generatorConfig配置文件生成映射文件

MyBatis是一个基于Java语言的持久层框架,它通过XML描述符或注解将对象与存储过程或SQL语句进行映射,并提供了普通SQL查询、存储过程和高级映射等操作方式,使得操作数据库变得非常方便。

如果需要使用MyBatis Generator来自动生成Java代码和MyBatis映射文件,则可以通过一下步骤来实现

添加POM插件依赖

    <build>
        <plugins>
            
            <plugin>
                <groupId>org.mybatis.generatorgroupId>
                <artifactId>mybatis-generator-maven-pluginartifactId>
                <version>1.3.7version>
                <configuration>
                    
                    <configurationFile>generatorConfig.xmlconfigurationFile>
                    <verbose>trueverbose>
                    <overwrite>trueoverwrite>
                configuration>
                <dependencies>
                    <dependency>
                        <groupId>mysqlgroupId>
                        <artifactId>mysql-connector-javaartifactId>
                        <version>5.1.35version>
                    dependency>
                dependencies>
            plugin>
        plugins>
    build>

配置generatorConfig文件

文件名称:generatorConfig.xml

存放位置:项目跟路径下

文件详情:


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.jdbc.Driver"
                        connectionURL="jdbc:mysql://${ip}:3306/${database}?useUnicode=true&characterset=utf-8"
                        userId="" password=""/>





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

        <javaModelGenerator targetPackage="com.zatech.aquarius.core.cms.domain" targetProject="MAVEN">
            <property name="enableSubPackages" value="true"/>
        javaModelGenerator>

        <sqlMapGenerator targetPackage="com.zatech.aquarius.core.cms.dao" targetProject="MAVEN">
            <property name="enableSubPackages" value="true"/>
        sqlMapGenerator>

        <javaClientGenerator type="XMLMAPPER" targetPackage="com.zatech.aquarius.core.cms.dao" targetProject="MAVEN">
            <property name="enableSubPackages" value="true"/>
        javaClientGenerator>



        <table tableName="" domainObjectName="EntityDo"
               enableUpdateByPrimaryKey="true"  enableSelectByPrimaryKey="true" enableDeleteByPrimaryKey="true"
                enableCountByExample="false" enableUpdateByExample="false"  enableSelectByExample="false"
               enableDeleteByExample="false"/>

    context>
generatorConfiguration>

执行指令

mvn mybatis-generator:generate

执行成功后,会在target/generated-sources下生成映射文件

常见问题

  1. 生成的mapper文件仅有insert方法,没有update和delete方法。

    – 原因:mysql连接器(mysql-connector-java)版本太高了,使用低版本的:5.1.35。

    或者在jdbcConnection节点里配置useInformationSchema属性,可以解决mybatis-generator不识别主键问题。参考文章:https://www.zdltech.com/archives/1535.html

你可能感兴趣的:(MyBaties,mybatis,generatorConfig,逆向工程)