首页 > 解决方案 > 在遍历结果集时,像 hibernate 这样的 ORM 框架是否实现了任何类型的行映射器?

问题描述

在遍历结果集时,像 hibernate 这样的 ORM 框架是否实现了任何类型的行映射器?如果不实现行映射器,他们至少在创建实体列表时迭代结果集还是直接获取实体列表作为结果集?即,内部工作createQuery("from Employee").getResultlist();

如果我们使用原生查询,它是直接返回结果集还是遍历结果集并返回对象数组列表,即List<Object[]>

标签: javahibernateorm

解决方案


如果您在查询时询问 Hibernate 是否在使用某种面向对象的扩展:Hibernate 与很多数据库一起工作,它不能使用 OO 供应商扩展,因为它们不会被标准化。

如果您查看实体的注释或映射,它们会告诉您每个属性映射到哪一列。所以是的,它确实具有行映射功能,它可以生成查询、将列映射到属性并从中填充实体。

您可以通过将记录器 org.hibernate.sql 的日志级别设置为 DEBUG 来查看 Hibernate 生成的 SQL。


推荐阅读