Mybatis代码生成工具的使用

这篇博客介绍了如何配置和使用MyBatis Generator来自动化生成Java模型、Mapper接口和XML映射文件。配置文件`generatorConfig.xml`包含了数据库连接信息、生成的目标位置以及特定数据库表的详细设置。在`pom.xml`中添加插件配置,通过Maven执行生成操作。博客强调了配置文件的位置、数据库驱动和表的选择等关键点。
摘要由CSDN通过智能技术生成

generatorConfig.xml文件放到resource目录下,即classpath路径

<?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>
    <!--mysql 连接数据库jar 这里选择自己本地位置;
    如果不知道maven本地仓库地址,可以使用EveryThing工具全局搜索mysql-connector-java,找到jar包位置;
    也可以手动下载一个jar放在指定位置,进行引用。
    -->
    <classPathEntry location="D:\repository\mysql\mysql-connector-java\8.0.20\mysql-connector-java-8.0.20.jar"/>

    <context id="testTables" targetRuntime="MyBatis3">
        <commentGenerator>
            <!-- 是否去除自动生成的注释,true:是,false:否 -->
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>

        <!--数据库连接的信息:驱动类、连接地址、用户名、密码 -->
        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
                        connectionURL="jdbc:mysql://10.60.87.74:3311/mymsppv?useSSL=true&amp;useUnicode=true&amp;characterEncoding=utf8" userId="deployop"
                        password="B0U9x0b+=2">
        </jdbcConnection>

        <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和
        NUMERIC 类型解析为java.math.BigDecimal -->
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>

        <!-- 指定javaBean生成的位置
        targetPackage:生成的类要放的包,真实的包受enableSubPackages属性控制;
        targetProject:目标项目,指定一个存在的目录下,生成的内容会放到指定目录中,如果目录不存在,MBG不会自动建目录
        -->

        <javaModelGenerator targetPackage="com.foresealife.document.pv.entity" targetProject="src/main/java">
            <!-- 在targetPackage的基础上,根据数据库的schema再生成一层package,最终生成的类放在这个package下,默认为false;如果多个数据库改为true分目录 -->
            <property name="enableSubPackages" value="false"/>
            <!-- 设置是否在getter方法中,对String类型字段调用trim()方法 -->
            <property name="trimStrings" value="false"/>
        </javaModelGenerator>

        <!--  指定mapper映射文件生成的位置
        targetPackage、targetProject同javaModelGenerator中作用一样-->
        <sqlMapGenerator targetPackage="com.foresealife.document.mapper.pvmapper" targetProject="src/main/resources">
            <property name="enableSubPackages" value="false"/>
        </sqlMapGenerator>

        <!-- 指定mapper接口生成的位置
        targetPackage、targetProject同javaModelGenerator中作用一样
        -->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.foresealife.document.mapper.pvmapper" targetProject="src/main/java">
            <property name="enableSubPackages" value="false"/>
        </javaClientGenerator>

        <!-- 指定数据库表
        domainObjectName:生成的domain类的名字,当表名和domain类的名字有差异时一定要设置,如果不设置,直接使用表名作为domain类的名字;
        可以设置为somepck.domainName,那么会自动把domainName类再放到somepck包里面;
        -->
        <table tableName="msp_nb_organ_review" domainObjectName="NbOrganReview"
               enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false"
               selectByExampleQueryId="false">
        </table>
        <table tableName="msp_outstanding_issues_doc" domainObjectName="OutstandingIssuesDoc"
               enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false"
               selectByExampleQueryId="false">
        </table>
        <table tableName="msp_rule_result" domainObjectName="RuleResult"
               enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false"
               selectByExampleQueryId="false">
        </table>
<!--        <table tableName="t_msp_elec_seal_doc_template" domainObjectName="ElecSealDocTemplate"-->
<!--               enableCountByExample="false" enableUpdateByExample="false"-->
<!--               enableDeleteByExample="false" enableSelectByExample="false"-->
<!--               selectByExampleQueryId="false">-->
<!--        </table>-->
<!--        <table tableName="t_msp_remind" domainObjectName="Remind"-->
<!--               enableCountByExample="false" enableUpdateByExample="false"-->
<!--               enableDeleteByExample="false" enableSelectByExample="false"-->
<!--               selectByExampleQueryId="false">-->
<!--        </table>-->
<!--        <table tableName="t_msp_template" domainObjectName="Template"-->
<!--               enableCountByExample="false" enableUpdateByExample="false"-->
<!--               enableDeleteByExample="false" enableSelectByExample="false"-->
<!--               selectByExampleQueryId="false">-->
<!--        </table>-->
<!--        <table tableName="t_msp_template_file" domainObjectName="TemplateFile"-->
<!--               enableCountByExample="false" enableUpdateByExample="false"-->
<!--               enableDeleteByExample="false" enableSelectByExample="false"-->
<!--               selectByExampleQueryId="false">-->
<!--        </table>-->
<!--        <table tableName="t_template_category" domainObjectName="TemplateCategory"-->
<!--               enableCountByExample="false" enableUpdateByExample="false"-->
<!--               enableDeleteByExample="false" enableSelectByExample="false"-->
<!--               selectByExampleQueryId="false">-->
<!--        </table>-->
<!--        <table tableName="t_template_category_sub" domainObjectName="TemplateCategorySub"-->
<!--               enableCountByExample="false" enableUpdateByExample="false"-->
<!--               enableDeleteByExample="false" enableSelectByExample="false"-->
<!--               selectByExampleQueryId="false">-->
<!--        </table>-->
    </context>
</generatorConfiguration>

pom.xml里在 project》build》plugins层级里加如下代码

<plugin>
				<groupId>org.mybatis.generator</groupId>
				<artifactId>mybatis-generator-maven-plugin</artifactId>
				<version>1.3.2</version>
				<configuration>
					<!--配置文件的位置-->
					<configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
					<verbose>true</verbose>
					<overwrite>true</overwrite>
				</configuration>
				<executions>
					<execution>
						<id>Generate MyBatis Artifacts</id>
						<goals>
							<goal>generate</goal>
						</goals>
					</execution>
				</executions>
				<dependencies>
					<dependency>
						<groupId>org.mybatis.generator</groupId>
						<artifactId>mybatis-generator-core</artifactId>
						<version>1.3.2</version>
					</dependency>
					<dependency>
						<groupId>mysql</groupId>
						<artifactId>mysql-connector-java</artifactId>
						<version>8.0.20</version>
					</dependency>
				</dependencies>
</plugin>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值