【发布时间】:2019-02-26 19:07:27
【问题描述】:
在 Spring Boot 教程网站上,我阅读了以下内容:
Spring Framework 的优点在于它不会尝试解决已经解决的问题。它所做的只是提供与提供出色解决方案的框架的出色集成。
- 为 ORM 休眠
- iBatis 用于对象映射
Hibernate 是这样解释它的目的的:
Hibernate ORM 使开发人员能够更轻松地编写数据超过应用程序进程的应用程序。作为一个对象/关系映射 (ORM) 框架,Hibernate 关注数据持久性,因为它适用于关系数据库(通过 JDBC)。
除了 iBatis 改名为 MyBatis 之外,MyBatis 提供的解决方案似乎与 ORM 方法不同。 MyBatis 的创建者在他们的introduction page 上写道:
MyBatis 是一流的持久性框架,支持自定义 SQL、存储过程和高级映射。 MyBatis 消除了几乎所有的 JDBC 代码和手动设置参数和检索结果。 MyBatis 可以使用简单的 XML 或 Annotations 进行配置,并将原语、Map 接口和 Java POJO(Plain Old Java Objects)映射到数据库记录。
所以我的猜测是,Object Mapping 一定更接近于数据库、SQL、存储过程之类的东西。我不知道它是否可以应用于 NoSQL 数据库。而 ORM 只涉及关系数据库。
ORM 真的不同于 Object Mapping 还是它们的同义词?有什么区别?
【问题讨论】:
标签: java hibernate orm mybatis