天天看点

第 3-4 课:MyBatis 逆向工程,简化代码开发

前言

通过前面课程的学习,我们了解到 MyBatis 是一个“半自动”的 ORM 框架,SQL 语句需要开发者自定义,这样做的好处是代码更加灵活,SQL 语句需要我们单独在 Mapper.xml 中定义,与 Mapper 接口相对应,使用 MyBatis 进行开发的基本配置是:

  • 实体类
  • Mapper 接口
  • Mapper.xml

如下图所示。

第 3-4 课:MyBatis 逆向工程,简化代码开发

这种方式的缺陷是如果参与业务的表太多,每张表的业务都需要自定义 SQL、创建实体类、Mapper 接口,难免会很麻烦。

而且除了定义 SQL,创建实体类和 Mapper 接口的工作难度并不大,没有涉及太多的业务逻辑,属于简单的重复性工作,那么作为一个主流的 ORM 框架,MyBaits 有没有为我们提供解决方案呢?也就是说 MyBatis 能否自动根据数据表,帮我们生成实体类、Mapper 接口、Mapper.xml?

有的,通过我们本讲所要学习的逆向工程,就可以完成上述需求。

首先来了解一下什么是逆向工程。

逆向工程是 MyBatis 提供的一种自动化配置方案,针对数据表自动生成 MyBatis 所需要的各种资源,即实体类、Mapper 接口、Mapper.xml,但是逆向工程只针对于单表使用,如果数据表之间有级联,逆向工程无法自动生成级联关系,也就是说下面这种结构,无法用逆向工程自动创建。

publ
           

继续阅读