如果不配置hibernate的二级缓存的话,是不是就体现不出hibernate的优越性

hibernate的一级缓存是默认的,而且只能在同一个session下才有效果,session关闭后,一级缓存出随着被清除,感觉一级缓存用到的似乎不是很多。如果不配置二级... hibernate的一级缓存是默认的,而且只能在同一个session下才有效果,session关闭后,一级缓存出随着被清除,感觉一级缓存用到的似乎不是很多。如果不配置二级缓存的话,就好像没有体现出hibernate缓存机制的优越性。
现在升级的一个项目就是使用默认的一级缓存,但是系统的性能很低,这跟一级缓存应该没有关系吧,或者说与hibernate应该没有关系吧
问题有点多,还望大神不吝赐教!
展开
 我来答
风恋枫123
2016-11-17 · 超过16用户采纳过TA的回答
知道答主
回答量:29
采纳率:0%
帮助的人:22万
展开全部

从二级缓存的简单介绍和hibernate的优势两方面回答:

(1)二级缓存

1)hibernate缓存分session级和二级缓存。二级缓存在内存和磁盘之间;缓存的好处就是可以防止频繁的访问数据库;

2)为什么需要二级缓存呢?

因为一级缓存有限,一级缓存生命周期短,所以需要二级缓存来弥补这些问题。

3)二级缓存的原理图

4)二级缓存的对象可能放在内存中,也可能放在磁盘上。

(2)hibernate的优势

1)如果一个公司里不用框架,切换数据库需要重写编写sql;使用jdbcc操作数据库,sql语句编写比较麻烦PreparedStatement(?,?);set(1,?);set(2,?);

2)数据库本身是体系关系型的,而业务成是对象模型,这就会出现一个阻抗问题。这就需要一个桥来 搭建对象模型和关系模型之间,即持久层。业务逻辑(hql:hibernatequery language)——数据持久层(hibernate(hibernate api;hibernate.cfg.xml核心配置文件;对象关系映射文件))——sql数据库

3)耦合性小;通用性强;对象化;性能保证(优化);鲁棒性增加

大雅新科技有限公司
2024-11-19 广告
这方面更多更全面的信息其实可以找下大雅新。深圳市大雅新科技有限公司从事KVM延长器,DVI延长器,USB延长器,键盘鼠标延长器,双绞线视频传输器,VGA视频双绞线传输器,VGA延长器,VGA视频延长器,DVI KVM 切换器等,优质供应商,... 点击进入详情页
本回答由大雅新科技有限公司提供
喵惠
2012-11-20 · TA获得超过333个赞
知道小有建树答主
回答量:169
采纳率:76%
帮助的人:81.8万
展开全部
完全不正确, hibernate 的优越性体现在其卓越 ORM 上面。而且其相比于 Mybatis 更是一个全自动化的 ORM 框架。 即,既能够完成 O ——》 R 的自动化映射,也能完成 R——》O 的自动化映射。 对象 到 关系数据库,反之关系数据库 到 对象 全部自动帮你映射。 这才是 hibernate 的最大优越性,让你像操作普通对象一样就完成 entity 的 CRUD
追问
请问一下你对一级缓存、二级缓存和查询缓存的理解?
追答
一级缓存作用范围为 session ,使用范围不是很广。
二级缓存作用于整个系统生命周期,适用范围广,也更能称为传统意义上的缓存
查询缓存又可以分为 数据库查询缓存,和 系统级的缓存解决方案 (通用缓存中的一小块)
查询缓存就是 sql 级别的缓存,例如 一条 高级查询的 sql 发过来之后 将你结果缓存, 下次你再回溯到之前已经查询的页码的时候, 直接将结果返回给你即可。 不需要再 select 数据库
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
a11e90
2012-11-19 · 知道合伙人软件行家
a11e90
知道合伙人软件行家
采纳数:473 获赞数:1702
qq交流群:208779755 博客:https://my.oschina.net/haitaohu

向TA提问 私信TA
展开全部
二级缓存是SessionFactory级别的全局缓存,它底下可以使用不同的缓存类库,比如ehcache、oscache或者memcache等一般项目 都会引入一个缓存的框架进行统一管理的 而且 这些更容易进行集群 你想提高系统性能可以看下这方面的资料 个人推荐memcache。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
人生真的好幸福
2016-10-25 · TA获得超过213个赞
知道小有建树答主
回答量:349
采纳率:100%
帮助的人:131万
展开全部
是的,如果hibernate不配置缓存的话,失去了一部分性能,但也并不是必须配置,看项目的具体需要,hibernate毕竟以ORM出名。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
123回个话great
2016-08-11
知道答主
回答量:29
采纳率:0%
帮助的人:13.2万
展开全部
不一定啊,二级缓存是你用到的时候才配置,hibernate的主要优点在于封装了对数据库的操作,使用起来方便很多
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式