java - 来自单个表的选择查询的 JDBC 或 Hibernate 性能

标签 java hibernate jdbc

我需要根据用户输入从只读表中获取记录。用户检索这些记录的请求数量约为每小时 50,000 - 60,000 个,表中有数百万条记录。

我考虑过使用普通 JDBC,但人们建议使用 Hibernate,因为它可以优化查询以获得更好的性能。通过使用 Hibernate 而不是 JDBC,我会获得更好的性能吗?

我认为这里没有必要使用 ORM 解决方案,因为它只是一个只读表。但如果它有助于提高我想要的性能,我肯定会这么做。非常感谢任何建议。

最佳答案

对于大多数数据库供应商来说,与 Hibernate 相比,JDBC 始终会提供更好的性能。您可以检查下面链接中给出的比较。他的结论是,当查询行数较少的表时,hibernate 速度很快,否则 jdbc 会更好。

http://phpdao.com/hibernate_vs_jdbc/

选择 hibernate 而不是 jdbc 和 SQL 查询并不是因为性能,而是因为主要是对象持久性和数据库独立性(不编写特定于数据库的查询)。您可以阅读 PDF 指南以获得更好的 View 。

http://www.mindfiresolutions.com/mindfire/Java_Hibernate_JDBC.pdf

关于java - 来自单个表的选择查询的 JDBC 或 Hibernate 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39188713/

相关文章:

java - Hibernate 枚举映射

java - Hibernate 5.1.x命名策略(向后兼容Hibernate 4.x)

java - 与数据库无关的数据库加密

java - JPA 仅创建一次查询

java 在 'absolute' 路径下运行良好,但在指定 CLASSPATH 时无法运行

java - Android-如何用按钮显示空白的gridview

MySQL 外键约束不适用于我的数据库设计

java - ANTLR (v4) 规则不适用

java - 如何将 JDBC4PreparedStatement 与需要 OUT 参数的 MySQL 存储过程一起使用?

java - 苹果 jdbc 网络服务器