一、什么是逆向工程
1.正常工作流程
- 数据库:设计数据表
- 实体类:建立与数据表对应的Pojo实体类
- 持久层:设计持久层,Mapper接口和Mapper.xml 映射文件
- 服务层:Service接口和ServiceImpl接口实现类
- 控制层:页面功能代码Controller
- 前端视图层
2.Mybatis逆向工程工作流程
MyBatis官方为我们提供了一个逆向工程,通过这个逆向工程,只需要建立好数据表,MyBatis就会根据这个表自动生成pojo类、mapper接口、sql映射文件
- 加入Mybatis逆向工程的依赖
- 设计数据表
- 配置逆向工程配置信息
- 运行逆向工程
- 得到 pojo类、mapper接口、sql映射文件
二、逆向工程优缺点
优点:
帮助我们自动生成Java代码,大大加快了我们的开发效率
缺点:
生成的文件太过冗余,不必要的代码过多。尤其是sql映射文件,里面的配置内容太多,对于mapper层,提供的方法比较有限,需要自行扩展
三、逆向工程使用步骤
3.1 创建Maven工程
3.2 引入POM依赖
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<!-- 日志包,方便查看执行信息-->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.16</version>
</dependency>
<!-- 代码生成工具jar -->
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.11</version>
</dependency>
</dependencies>
3.3 generatorConfig.xml
创建逆向工程的配置文件 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>
<context id="DB2Tables" targetRuntime="MyBatis3">
<!-- 去掉生成文件中的注释 -->
<commentGenerator>
<property name="suppressAllComments" value="true"/>
</commentGenerator>