hibernate如何工作?

时间:2011-12-05 18:39:00

标签: hibernate

嗨,我对hibernate有一个基本的疑问。 如果我们在hibernate中使用HQL,那么从数据库中获取数据的方式是什么? 它是否像hibernate将HQL转换为SQL并在数据库中执行并返回结果?如果是这种情况,不会将HQL转换为SQL是额外的开销吗?

请澄清我。感谢。

1 个答案:

答案 0 :(得分:8)

是的,HQL被翻译为SQL。当然还有额外的开销,但这是值得的,因为

  • 开发应用程序所需的时间更少,而且硬件比工程师时间便宜
  • 应用程序比整个地方的JDBC代码更易于维护
  • Hibernate能够通过仅在必要时查询和更新,批量更新等来优化JDBC代码。
  • 与实际执行查询以及对数据库进行进程间和/或网络调用的成本相比,此转换的成本可以忽略不计。