ORM框架与MyBatis的区别

1、何谓ORM

ORM工具提供了持久化和数据表之间的映射关系。受ORM管理的持久化类(就是一个普通Java类)对应一个数据表,只要程序对这个持久化类进行操作,系统就可以转换成对对应数据表的操作。

  • 数据表的行映射元素(即实例):持久化类会生成很多实例,每个实例都对应数据表的一行记录。当程序在应用中修改持久化的某个实例时,ORM工具将对应转换成对对应数据表中特定行的操作。

  • 数据表的列(字段)映射对象的属性:当程序修改某个持久化对象的指定属性时(持久化实例映射到数据行),ORM将会转换成对对应数据表中指定数据行、指定列的操作。

ORM框架负责将面向对象的操作转换为底层数据库操作,这种转换对开发者透明,无需开发者关心,从而将开发者从关系模型中解放出来,使得开发者能以面向对象的思维操作关系数据库。

2、何谓MyBatis

MyBatis执行SELECT查询才会返回ResultSet,此时才需要将ResultSet映射成java对象,其他语句不需要映射。

MyBatis如何将查询语句查询得到的数据表转换java对象:

  • 列名(或列别名)和属性名相同:该列的值就会被传给Java对象的对应属性

  • 显式指定:使用result(或@Result注释)来指定列名与对象属性之间的对应关系。

3、总结

ORM框架与MyBatis不同,ORM框架将数据库表一行对应一个类实例,对类的操作会影响到数据库。MyBatis是将查询语句得到的ResultSet映射成类,在使用数据库时需要写SQL语句,对类的修改也不会影响到数据库。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值