java - Hibernate:冗长的 ArrayLists 的持久性优化
问题描述
我在使用数据库时遇到了多个瓶颈。我正在使用通过 Hibernate ORM 访问并用 Java 8 编写的 PostgreSQL。
这是需要优化的类的示例:
public class RightEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@ElementCollection
@LazyCollection(LazyCollectionOption.FALSE)
private List<Long> readableEntity = new ArrayList<Long>();
}
RightEntity 是一个允许访问 Id 列表(Long 列表)的对象。问题是每当我加载这个实体时,包含数百个元素的列表 readableEntity 可能需要几秒钟才能同时加载。这是一个巨大的瓶颈,因为它几乎用于我服务器的每个 API 和管理器中。
我的问题是:如何优化此代码以使其运行更顺畅?
LazyCollectionOption.FALSE 类似于 FetchType.Eager 我尝试延迟加载它,它运行得更快,但每当我尝试加载列表时都会得到一个 LazyCollection,因此我正在探索替代方案或修复方法。
谢谢 !
解决方案
推荐阅读
- outlook-addin - Outlook 插件未出现在 Windows Outlook 365 中
- wordpress - WordPress 主页覆盖 htaccess 中的现有规则
- php - 停止无限循环强制下载
- angular - 如何解决“无法解析 EventlistComponent 的所有参数”的问题
- java - 如何用另一个用户输入替换部分用户输入?
- python - Python Pandas - 如果时间戳落在多个开始时间和结束时间之间,则标记
- c# - 在 Unity 中使用键重新启动场景
- c# - C#如何在对象上设置值
- pyspark - Pyspark根据列表中的字符串匹配条件创建多个列
- azure - 将 Azure Application Insight 与 tomcat 应用程序一起使用