• Mybatis逆向工程实战:如何快速生成实体类、Mapper接口和配置文件


    正向工程:先创建Java实体类,由框架负责根据实体类生成数据库表。Hibernate是支持正向工程的。

    逆向工程:先创建数据库表,由框架负责根据数据库表,反向生成如下资源:
    Java实体类
    Mapper接口
    Mapper配置文件

            Mybatis是一个强大的持久层框架,它可以让你的数据库操作更加方便、高效和优雅。但是,如果你要手动编写实体类、Mapper接口和配置文件,那么你可能会觉得很繁琐、重复和容易出错。有没有一种方法可以让你自动地生成这些代码呢?答案是肯定的,那就是Mybatis的逆向工程功能。

            Mybatis的逆向工程可以根据你的数据库表结构,自动生成对应的实体类、Mapper接口和配置文件,从而节省你的时间和精力,提高你的开发效率。你只需要简单地配置一些参数,就可以轻松地完成这个过程。而且,MybatisPlus的逆向工程还支持多种数据库类型,如MySQL、Oracle、SQL Server等,以及多种代码风格,如Lombok、ActiveRecord等,让你可以根据自己的需求进行定制。

            在这篇博客中,我将通过一个完整的示例教程,带你一步步地掌握这个强大的功能。无论你是Mybatis的初学者还是老手,我相信你都能从中受益。如果你对这个主题感兴趣,请继续阅读吧!

    目录

    步骤一:在pom.xml文件中添加依赖

    步骤二:resource下添加配置文件generatorConfig.xml

    步骤三:生成


    步骤一:在pom.xml文件中添加依赖

    1. <build>
    2. <!-- 插件 -->
    3. <plugins>
    4. <!-- 逆向工程插件 -->
    5. <plugin>
    6. <groupId>org.mybatis.generator</groupId>
    7. <artifactId>mybatis-generator-maven-plugin</artifactId>
    8. <version>1.3.6</version>
    9. <!-- 逆向工程根据数据库生成,jdbc驱动 -->
    10. <dependencies>
    11. <dependency>
    12. <groupId>mysql</groupId>
    13. <artifactId>mysql-connector-java</artifactId>
    14. <version>8.0.25</version>
    15. </dependency>
    16. </dependencies>
    17. </plugin>
    18. </plugins>
    19. </build>
    20. <!-- Maven编译插件 -->

    步骤二:resource下添加配置文件generatorConfig.xml

    1. "1.0" encoding="UTF-8"?>
    2. generatorConfiguration
    3. PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
    4. "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
    5. <generatorConfiguration>
    6. <context id="testTables" targetRuntime="MyBatis3Simple">
    7. <commentGenerator>
    8. <property name="suppressAllComments" value="true" />
    9. commentGenerator>
    10. <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
    11. connectionURL="jdbc:mysql://localhost:3306/mybatisdb" userId="root"
    12. password="123">
    13. <property name="nullCatalogMeansCurrent" value="true"/>
    14. jdbcConnection>
    15. <javaTypeResolver>
    16. <property name="forceBigDecimals" value="false" />
    17. javaTypeResolver>
    18. <javaModelGenerator targetPackage="com.woniuxy.springboot01.entity"
    19. targetProject=".\src\main\java">
    20. <property name="enableSubPackages" value="false" />
    21. <property name="trimStrings" value="true" />
    22. javaModelGenerator>
    23. <sqlMapGenerator targetPackage="mapper"
    24. targetProject=".\src\main\resources">
    25. <property name="enableSubPackages" value="false" />
    26. sqlMapGenerator>
    27. <javaClientGenerator type="XMLMAPPER"
    28. targetPackage="com.woniuxy.springboot01.mapper"
    29. targetProject=".\src\main\java">
    30. <property name="enableSubPackages" value="false" />
    31. javaClientGenerator>
    32. <table schema="Emp" tableName="emp">table>
    33. <table schema="Dep" tableName="dep">table>
    34. context>
    35. generatorConfiguration>

    步骤三:生成

    生成之后,可以看到多了mapper文件和实体类~

  • 相关阅读:
    基于JAVA果蔬大全和智能识别系统(Springboot框架+AI人工智能) 开题报告
    vue2 顶象 安全 验证码的使用
    java计算机毕业设计运动会管理系统源码+mysql数据库+系统+lw文档+部署
    RPA的命令库与子程序是什么?
    Lambda 表达式
    创建文件练习
    Node.js内置模块
    面试常问:HTTPS与HTTP的区别
    先进电机技术 —— 转子悬浮电机
    H5调用摄像头扫码详解
  • 原文地址:https://blog.csdn.net/TaloyerG/article/details/132938708