Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Hibernate或JDBC的写操作性能_Java_Hibernate_Jdbc - Fatal编程技术网

Java Hibernate或JDBC的写操作性能

Java Hibernate或JDBC的写操作性能,java,hibernate,jdbc,Java,Hibernate,Jdbc,我怀疑应用程序的写操作数是否比读操作数多,而读操作数比Hibernate或JDBC?的性能更好 我的理解是,对于读取,hibernate很快,因为它使用缓存机制。但对于写操作,这两种方法都与hibernate在内部触发JDBC查询相同 但在这方面,我忽略了这两者在写作方面的显著差异 请帮助我指出。Hibernate是JDBC之上的一层,因此Hibernate充其量也将与纯精心设计的JDBC应用程序一样快,而且在大多数情况下速度较慢 虽然说hibernate的性能非常好,足以支持很多项目,但唯一真

我怀疑应用程序的写操作数是否比读操作数多,而读操作数比Hibernate或JDBC?的性能更好

我的理解是,对于读取,hibernate很快,因为它使用缓存机制。但对于写操作,这两种方法都与hibernate在内部触发JDBC查询相同

但在这方面,我忽略了这两者在写作方面的显著差异
请帮助我指出。

Hibernate是JDBC之上的一层,因此Hibernate充其量也将与纯精心设计的JDBC应用程序一样快,而且在大多数情况下速度较慢


虽然说hibernate的性能非常好,足以支持很多项目,但唯一真正的问题可能是很多实体的启动时间。

hibernate生成SQL语句,这些语句使用JDBC发送到数据库。在性能上没有差别。这只是一个简短的答案。SQL性能优化还有许多其他方面。除非Hibernate在幕后进行了许多定制JDBC解决方案无法做到的优化,因为这些优化不是那么容易做到的,比如批量插入、脏检查避免无用的更新、延迟插入和更新避免无用的查询,以防以后引发异常,所以答案是:这取决于两种解决方案的代码编写得有多好。我完全同意你的观点,我试图表达的可能不够好,加上hibernate可以轻松访问复杂的功能。是的,JDBC天生更快,但性能/时间消耗的比率完全不同。