中易网

感觉hibernate学起来好难,用起来也难,直接用Jdbc好的了

答案:5  悬赏:60  
解决时间 2021-03-06 22:01
感觉hibernate学起来好难,用起来也难,直接用Jdbc好的了
最佳答案
Hibernate其实是对JDBC一种轻量级的封装,楼下的某些朋友一看回答的水平就知道根本就没怎么接触过hibernate,今天我就给你好好的介绍下:
Hibetnate一般用做持久层,刚刚也说过了时对JDBC的轻量级封装,传统的对数据库操作无疑是硬编码方式,但是这样做耦合度极高,是非常“化石”的写法,真正的企业级开发你是见不到这样做的,除非特殊情况,我们都知道,现在市面上所有的商用数据库,Oracle,DB2,SqlServer等等都是面向关系的,但是我们使用的编程语言如:c#,Java等等都是面向对象的,面向关系和面向对象之间的操作肯定是不会同步的,这就是我们首先选择Hibernate的一个重要原因,Hibernate完全是采用面向对象的方式来操纵数据库,使我们能够简化开发。
对象之间的依赖关系,继承关系我们都可以采用Hibernate映射到数据库中,这是传统的JDBC望尘莫及的,JDBC查询数据基本上没任何优化可讲,哪怕是采用存储过程也仅仅是提高数据查询速度,根本解决不了大并发查询过程中对数据库造成的压力以及访问次数,但是Hibernate可以做到,采用Hibernate的一级缓存,二级缓存我们可以对数据库进行高性能优化,比如两条相同的查询语句,查询相同的数据,Hibernate首先会从数据库查找,第一次查询的时候,也会把查询的数据放入缓存中最备份,第二次查询的时候就不用访问数据库了,直接从缓存中获取,这就大大的优化的数据库。
Hibernate本身支持传统的sql,也就是JDBC,当然不多用,也懒得用,因为Hibernate提供了面向对象的查询语句HQL,这样完全可以简化SQL语句和弥补面向关系数据库的不足之处。
说了这么多,我也告诉你,Hibernate学起来难度还是有,尤其是对象之间的关联关系,one_to_many,many_to_one等等,是需要你花时间的,真正的企业级开发对数据库实施SRUD不仅仅会采用Hibernate,也会搭上存数过程连用,这样既可以提高访问速度,因为存储过程是预编译,也可以缓解数据库压力,也就是优化。
所以请以后不懂Hibernate的人少答非所问。
全部回答
你是感觉hibernate学起来难。 但是你真正用熟了,保证比jdbc简单, 而且还比jdbc省时省力。 好好学吧,等你学会了,你就知道那个好了
我对hibernate没有好感,也不熟,反正我不会用hibernate对sql优化,hibernate执行的效率也不高(我跟踪过),一般的大公司都有自己的一套系统,小公司都喜欢用hibernate,行业中多hibernate的评价不是很高,了解了,会用就可以了,不建议研究的太多
学JAVA的不了解整个一套SSH是不行的。。。

hibernate开销大啊,最简单的思路,功能多,一定占内存,

但一般情况下,hibernate对很多访问进行了缓存,进行了很多优化,占内存多,但性能不错,

自己来用jdbc的话,小项目无所谓了,大项目下性能往往不如hibernate,因为没有hibernate优化的好.

我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
拉登的优点与缺点是什么?哪个会更多一些?他
艺术花墙这个地址在什么地方,我要处理点事
下列措施符合保护物种多样性原则的是(  )
戴笠到底和谁结拜兄弟?
依赖沉浮不改 的情侣网名?
阿玛拉王国 惩罚 第一关BOSS问题
根据长方形面积公式推导的方法,设计一个推导
一个圆柱形油桶已知圆柱的高是六分米底面半径
爱侣保健品批发零售在什么地方啊,我要过去处
这次神七将在空中停留多长时间?
平面制图CAD如何入门? 难度如何?要求电脑配
空气能热水器停水后,用来进冷水的电磁阀门会
《吹肥皂泡》这篇文章的作者是谁
安心锁业在什么地方啊,我要过去处理事情
锦州市凌河区哪里有步行街?
推荐资讯
合能·四季城二期北门(人行门)在哪里啊,我有
奋斗ni'of'n'd'co'j'
初中科学中设立对照组,设立对照组的要求?
杜庄村村民委员会地址在哪,我要去那里办事
口袋妖怪心金用金手指怎么得到叶之石和火之石
山东考生606分理科可以上哪些大学
乐驰1.2节汽门有垫圈吗
3/5米是3米的多少(几分之几)
每次推荐的股票第二天都能涨好多,首次赚到交
碾甘线/X057(路口)在什么地方啊,我要过去处
宝宝发烧手心有汗什么原因
怎么让臂展变长?我1.76臂展差不多也就1.73。
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?