MyBatis逆向工程
大约 2 分钟
逆向⼯程:根据数据库表逆向⽣成Java的pojo类,SqlMapper.xml⽂件,以及Mapper接口类 等。
逆向工程的本质是自动创建相关的类、接口、配置文件,Maven中是采用插件的形式使用。
逆向工程配置与生成
在 pom.xml 中添加逆向工程插件
<!--定制构建过程--> <build> <!--可配置多个插件--> <plugins> <!--其中的⼀个插件:mybatis逆向⼯程插件--> <plugin> <!--插件的GAV坐标--> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.4.1</version> <!--允许覆盖--> <configuration> <overwrite>true</overwrite> </configuration> <!--插件的依赖--> <dependencies> <!--mysql驱动依赖--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.30</version> </dependency> </dependencies> </plugin> </plugins> </build>配置 generatorConfig.xml (插件需要的配置文件,必须放在类的根路径下)
<?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> <!-- targetRuntime有两个值: MyBatis3Simple:⽣成的是基础版,只有基本的增删改查。 MyBatis3:⽣成的是增强版,除了基本的增删改查之外还有复杂的增删改查。 --> <context id="DB2Tables" targetRuntime="MyBatis3"> <!--防⽌⽣成重复代码--> <plugin type="org.mybatis.generator.plugins.UnmergeableXmlMappersPlugin"/> <commentGenerator> <!--是否去掉⽣成⽇期--> <property name="suppressDate" value="true"/> <!--是否去除注释--> <property name="suppressAllComments" value="true"/> </commentGenerator> <!--连接数据库信息--> <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/powernode" userId="root" password="root"> </jdbcConnection> <!-- ⽣成pojo包名和位置--> <!-- targetProject 是Maven工程内的路径,将生成的包放在这个路径下--> <javaModelGenerator targetPackage="com.powernode.mybatis.pojo" targetProject="src/main/java"> <!--是否开启⼦包,false的话全部都在一个 .java 文件中 --> <property name="enableSubPackages" value="true"/> <!--是否去除字段名的前后空⽩--> <property name="trimStrings" value="true"/> </javaModelGenerator> <!-- ⽣成SQL映射⽂件的包名和位置 --> <sqlMapGenerator targetPackage="com.powernode.mybatis.mapper" targetProject="src/main/resources"> <!--是否开启⼦包--> <property name="enableSubPackages" value="true"/> </sqlMapGenerator> <!-- ⽣成Mapper接⼝的包名和位置 --> <javaClientGenerator type="xmlMapper" targetPackage="com.powernode.mybatis.mapper" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> </javaClientGenerator> <!-- 表名和对应的实体类名--> <table tableName="t_car" domainObjectName="Car"/> </context> </generatorConfiguration>双击运行插件即可生成。

image-20230612215159683
逆向工程适用于前期批量生成相关的文件,后期大可自行修改润色,整体不影响使用,按正常的流程使用MyBatis就可以。
