Active Record模式和MP的Mapper模式的比较

支持 ActiveRecord 模式:支持 ActiveRecord 形式调用,实体类只需继承 Model 类即可进行强大的 CRUD 操作

 

  1. 原有MP的Mapper模式

① 创建项目完成Spring和MP的集成

② 创建数据库表对应的实体类

③ 创建mapper接口并继承BaseMapper接口

④ Spring容器中获取Mapper接口的实例化对象完成数据库操作

描述:

通过以上流程,MP的操作模式较于原有Mybatis的数据库操作流程

没有任何变化,只是我们在编写代码的时候不用在mapper层声明

Sql语句或者XML文件了,提升开发效率。

  1. MP的AR模式

① 创建项目完成Spring和MP的集成

② 创建数据库表对应的实体类,继续Model类

③ 在实体类中覆写pkVal方法.

④ 创建Mapper接口并继承BaseMapper接口

⑤ 创建Spring对象,让Spring容器完成对Mapper层的实例化扫描

⑥ 创建实体类对象,直接调用实体类从Model中继承的数据库方法完成

数据库操作。

  1. 流程比较分析

MP的AR模式其实底层仍然使用的是Mapper层在完成数据库操作。

只不过由我们自己调用Mappe对象操作数据库,变成了通过

实体类对象来调用Mapper完成数据库操作。从代码的物理视图上

我们是看不到实体类调用Mapper的过程的。也就说,本质上仍然

Mapper层在操作数据库

[1] AR模式的

AR模式较于传统的MP模式操作数据库,在代码体系中,我们不用在获取Mapper对象,然后再将实体类传入给mapper层完成数据库操作,直接使用实体类即可完成操作。

提升开发效率。

[2]  AR模式的使用代码示例

  1. 创建一个集成了MP的SSM项目
  2. pojo层创建实体类,并继承Model类,覆写pkVal的方法

Active Record模式和MP的Mapper模式的比较

 

 使用AR模式完成数据库操作

Active Record模式和MP的Mapper模式的比较

 

Active Record模式和MP的Mapper模式的比较

上一篇:Android事件分发机制


下一篇:手写call 、 apply 、 bind