MyBatis Generator生成数据库模型实现示例

 更新时间:2023年12月05日 09:10:56   作者:小谷xg  
这篇文章主要为大家介绍了MyBatis Generator生成数据库模型实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

MyBatis Generator

以根据数据库表结构生成Java模型类、Mapper接口和对应的XML映射文件。以下是使用MyBatis Generator的一般步骤:

1.添加MyBatis Generator依赖

在项目的pom.xml(如果是Maven项目)或build.gradle(如果是Gradle项目)中添加MyBatis Generator的依赖。

Maven的例子:

<build>
    <plugins>
        <plugin>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-maven-plugin</artifactId>
            <version>1.4.0</version> <!-- 替换为最新版本 -->
            <configuration>
                <!-- 配置文件的路径,后面会创建一个generatorConfig.xml文件 -->
                <configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
                <overwrite>true</overwrite>
            </configuration>
            <dependencies>
                <!-- 驱动程序依赖 -->
                <dependency>
                    <groupId>mysql</groupId>
                    <artifactId>mysql-connector-java</artifactId>
                    <version>8.0.23</version> <!-- 替换为你使用的数据库版本 -->
                </dependency>
            </dependencies>
        </plugin>
    </plugins>
</build>

2.创建MyBatis Generator配置文件

在项目的src/main/resources目录下创建一个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="DB2Tables" targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>
        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/your_database"
                        userId="your_username"
                        password="your_password">
        </jdbcConnection>
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <javaModelGenerator targetPackage="com.example.model" targetProject="src/main/java"/>
        <sqlMapGenerator targetPackage="com.example.mapper" targetProject="src/main/resources"/>
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.example.mapper" targetProject="src/main/java"/>
        <table tableName="your_table_name"/>
    </context>
</generatorConfiguration>

请替换上述配置中的your_database、your_username、your_password、com.example.model、com.example.mapper和your_table_name为你自己的数据库连接信息和项目包结构。

3.运行MyBatis Generator

你可以通过Maven命令或IDE插件来运行MyBatis Generator。

如果使用Maven,在命令行中运行:mvn mybatis-generator:generate

通过IDE的插件执行生成操作

安装MyBatis Generator插件:

打开 generatorConfig.xml 文件,右键点击文件,选择「Run MyBatis Generator」。

一次生成多个表模型

<generatorConfiguration>
    <!-- Other configurations -->
    <context id="PGTables" targetRuntime="MyBatis3">
        <!-- Other context configurations -->
        <table tableName="table1"/>
        <table tableName="table2"/>
        <table tableName="table3"/>
        <!-- Add more tables as needed -->
    </context>
</generatorConfiguration>

以上步骤中,MyBatis Generator将会根据配置文件中的信息连接到数据库,读取表结构,然后生成对应的Java模型类文件、Mapper接口文件和XML映射文件。这些文件将会被生成到指定的目录中,根据你的配置,你可以在src/main/java目录下找到生成的Java模型类文件,更多关于MyBatis Generator数据库模型的资料请关注脚本之家其它相关文章!

相关文章

  • Java中ArrayList和LinkedList的区别

    Java中ArrayList和LinkedList的区别

    ArrayList和LinkedList在这个方法上存在一定的性能差异,本文就介绍了Java中ArrayList和LinkedList的区别,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • SpringBoot结合ProGuard实现代码混淆(最新版)

    SpringBoot结合ProGuard实现代码混淆(最新版)

    这篇文章主要介绍了SpringBoot结合ProGuard实现代码混淆(最新版),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • Java8新特性Lambda表达式的一些复杂用法总结

    Java8新特性Lambda表达式的一些复杂用法总结

    lambda表达式是JAVA8中提供的一种新的特性,它支持Java也能进行简单的“函数式编程”。 下面这篇文章主要给大家介绍了关于Java8新特性Lambda表达式的一些复杂用法的相关资料,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-07-07
  • Java实现亿级用户在线状态统计的两种方法

    Java实现亿级用户在线状态统计的两种方法

    本文主要介绍了Java实现亿级用户在线状态统计的示例,包括基于总数的统计方案和基于用户标识的统计方案,具有一定的参考价值,感兴趣的可以了解一下
    2025-05-05
  • Java使用备忘录模式实现过关类游戏功能详解

    Java使用备忘录模式实现过关类游戏功能详解

    这篇文章主要介绍了Java使用备忘录模式实现过关类游戏功能,结合实例形式详细分析了java备忘录模式的概念、原理及其在过关类游戏中的具体应用方法,需要的朋友可以参考下
    2018-04-04
  • Java非侵入式API接口文档工具apigcc用法详解

    Java非侵入式API接口文档工具apigcc用法详解

    这篇文章主要介绍了Java非侵入式API接口文档工具apigcc用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • MyBatis学习教程之开发Dao的方法教程

    MyBatis学习教程之开发Dao的方法教程

    这篇文章主要给大家介绍了关于MyBatis开发Dao的相关资料,使用Mybatis开发Dao,通常有两个方法,即原始Dao开发方法和Mapper接口开发方法。文中通过示例代码介绍的非常详细,需要的朋友们下面来一起看看吧。
    2017-07-07
  • 详解MyBatis中column属性的总结

    详解MyBatis中column属性的总结

    在MyBatis的映射中有column这么一个属性,我一直以为它映射的是数据库表中的列名,但经过学习发现他似乎映射的是SQL语句中的列名,或者说是查询结果所得到的表的列名,这篇文章主要介绍了MyBatis中column属性的总结,需要的朋友可以参考下
    2022-09-09
  • Java List排序实例代码详解

    Java List排序实例代码详解

    这篇文章主要介绍了Java List排序的相关资料,Java排序方法包括自然排序、自定义排序、Lambda简化及多条件排序,实现灵活且代码简洁,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-05-05
  • Spring Boot集成Redis Stream消息队列从入门到实战指南

    Spring Boot集成Redis Stream消息队列从入门到实战指南

    Redis Stream作为Redis 5.0引入的新数据类型,提供了完整的消息队列功能,成为轻量级消息中间件的优秀选择,本文给大家介绍Spring Boot集成Redis Stream消息队列从入门到实战指南,感兴趣的朋友跟随小编一起看看吧
    2026-03-03

最新评论