MyBatis Generator 详细配置 demo

本文介绍了MyBatis Generator的详细配置和使用方法,包括在Maven项目中配置MyBatis Generator插件,允许覆盖生成的文件,添加数据库驱动依赖,并探讨了如何自定义注释生成器。通过配置文件,可以方便地生成与数据库表对应的PO、DAO和Mapper XML文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MyBatis Generator 是 MyBatis 提供的一个代码生成工具。可以帮我们生成 表对应的持久化对象(po)、操作数据库的接口(dao)、CRUD sql的xml(mapper)。

MyBatis Generator 是一个独立工具,你可以下载它的jar包来运行、也可以在 Ant 和 maven 运行。

目前已知的代码生成器有两种: MyBatis-PlusMyBatis Generator ;前者是后者的加强版,对于MyBatis-Plus的使用可以参见: MyBatis-Plus 3.4.1 代码生成器 配置demo

0、使用环境

  • 开发工具:IDEA
  • 数据库:mysql
  • 包管理工具:maven

1、配置 MyBatis Generator Config

MyBatis Generator 插件启动后,会根据你在 pom 中配置都路径找到该配置文件。

这个配置文件才是详细都配置 MyBatis Generator 生成代码的各种细节。

其中最重要的就是 context ,你的配置文件至少得包含一个context

  • 配置示例:

    <?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>
        <!-- 引入配置文件 -->
        <properties resource="generator.properties"/>
    
        <!-- 一个数据库一个context,context的子元素必须按照它给出的顺序
            property*,plugin*,commentGenerator?,jdbcConnection,javaTypeResolver?,
            javaModelGenerator,sqlMapGenerator?,javaClientGenerator?,table+
        -->
    
        <context id="MySqlContext" targetRuntime="MyBatis3" defaultModelType="flat">
            <property name="beginningDelimiter" value="`"/>
            <property name="endingDelimiter" value="`"/>
            <property name="javaFileEncoding" value="UTF-8"/>
    
            <!-- 为模型生成序列化方法-->
            <plugin type="org.mybatis.generator.plugins.SerializablePlugin"/>
            <!-- 为生成的Java模型创建一个toString方法 -->
            <plugin type="org.mybatis.generator.plugins.ToStringPlugin"/>
    
            <!-- 注释 -->
            <!--注释生成配置-->
            <!--可以自定义生成model的代码注释-->
            <commentGenerator type="com.macro.mall.tiny.mbg.CommentGenerator">
                <!-- 是否去除自动生成的注释 true:是 : false:否 -->
                <property name="suppressAllComments" value="true"/>
                <property name="suppressDate" value="true"/>
                <property name="addRemarkComments" value="true"/>
            </commentGenerator>
    
            <!--配置数据库连接-->
            <jdbcConnection driverClass="${jdbc.driverClass}"
                            connectionURL="${jdbc.connectionURL}"
                            userId="${jdbc.userId}"
                            password="${jdbc.password}">
                <!--解决mysql驱动升级到8.0后不生成指定数据库代码的问题-->
                <property name="nullCatalogMeansCurrent" value="true" />
            </jdbcConnection>
    
            <!--实体类配置-->
            <!--指定生成model的路径-->
            <javaModelGenerator targetPackage="com.macro.mall.tiny.mbg.model"
                                targetProject="mall-tiny-01\src\main\java">
                <property name="enableSubPackages" value="false"/>
                <property name="trimStrings" value="true"/>
            
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值