gpt4 book ai didi

java - 如何在应用程序级别缓存复杂的java对象

转载 作者:行者123 更新时间:2023-12-01 15:06:16 24 4
gpt4 key购买 nike

我正在寻找一种在应用程序级别缓存 java 中复杂对象的解决方案。

例如,我想将一些数据集从数据库加载到内存中,并使我的应用程序服务在加载到内存中的对象之上工作。我考虑这样做是为了提高性能。

但我想知道如何在缓存中保存对象的关系。

例如,

如果一个类别有很多项目,存储关系的最佳方法是什么。我的想法是将类别和项目分开存储,并将关系存储在其他地方。这是因为我使用 hibernate 并且关联配置为延迟加载。

请分享您解决此问题的想法。

最佳答案

您确定需要在应用程序级别实现自定义缓存吗?

Hibernate 有一级和二级缓存,这对你来说还不够吗?考虑一下您将使用多少内存来将所有 Hibernate 对象存储在您自己的手写缓存中。如果它也具有读写功能,那么同谋的决定会给您带来更多的问题而不是好处。当然,这将是轮子的重新发明。

了解二级缓存在 hibernate 中如何工作。 http://www.javalobby.org/java/forums/t48846.html和其他性能调整:http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/performance.html

延迟加载集合的迭代取决于您用于处理 session 的模式。好例子:https://community.jboss.org/wiki/OpenSessionInView

关于java - 如何在应用程序级别缓存复杂的java对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12908634/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com