栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

同步静态方法如何在Java中工作,我可以将其用于加载Hibernate实体吗?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

同步静态方法如何在Java中工作,我可以将其用于加载Hibernate实体吗?

通过在静态方法锁上使用同步,您将同步类的方法和属性(与实例方法和属性相对)

所以你的假设是正确的。

我想知道使方法同步是否是确保线程安全的正确方法。

并不是的。您应该让该工作代替您的RDBMS。他们擅长这类东西。

同步对数据库的访问将获得的唯一结果就是使您的应用程序非常慢。此外,在您发布的代码中,每次都在构建会话工厂,这样,与执行实际工作相比,您的应用程序将花费更多的时间访问数据库。

想象以下情况:

客户端A和客户端B尝试将不同的信息插入表T的记录X中。

使用您的方法,唯一得到的就是确保在数据库中无论如何都会发生一个被另一个调用的情况,因为RDBMS会阻止它们同时插入来自A的一半信息和来自B的一半信息。
。结果将相同,但仅慢5倍(或更多)。

也许最好看看Hibernate文档中的“事务和并发性”一章。在大多数情况下,您要解决的问题已经得到解决,并且是一种更好的方法。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/390860.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号