我使用JDBC ()已经很长时间了,在我的个人和web应用程序中。现在,我的高年级学生要求我使用Hibernate框架而不是JDBC,原因如下。
JDBC,当开发人员完成工作时,资源泄漏和数据不一致就会发生。这些因素是真的吗?还有更多的因素支持这一点吗?
为什么我们应该使用Hibernate而不是JDBC呢?请帮我提一下你的想法。
谢谢。
发布于 2016-03-12 11:07:53
通过使用JDBC,在开发人员完成工作时会发生资源泄漏和数据不一致。
False.
Connection/(Prepared)Statement/ResultSet处理的重复代码而发生的,那么有很多JDBC框架可以帮您做到这一点。persist操作是级联到被删除的实体的。现在数据库中有一个不一致的状态。难以实现MVC概念
部分正确。实体确实帮助编写MVC模型的一部分要容易得多。
无封装
部分正确。实际上,映射信息只能在实体中指定,并在涉及实体的所有用例中被自动(或多或少)透明地重用。
大型编程开销
绝对正确。基本上是一种框架,在应用程序中持久性层变得太复杂时,您迟早会自己编写这些框架。根据我的经验,即使在中等大小的应用程序中,手动编写的持久性框架也是应用程序中最复杂的部分。
查询是特定于DBMS的
True.虽然在用例中使用本机查询并没有错,但当HQL不适合该作业时。
还有更多的因素支持这一点吗?
关于这方面的其他问题:
还有数以百计的博客和论坛主题关于这个主题,你会很快找到他们与您的首选网络搜索引擎。
https://stackoverflow.com/questions/35955020
复制相似问题