参考链接: Java程序来检查一个集合是否是另一个集合的子集
我有一个场景,我的应用程序可以访问有限时间窗口的会话,在此期间它必须从数据库中获取数据到内存中,然后只使用内存中的数据来处理请求.
...数据模型是一个简单的一对多关联,例如:
现在假设汽车和卡车计数数据存在了几年,这远远超过了内存.此外,我真的只对过去3个月加载车数非常感兴趣.
...我的问题是,使用hibernate加载这些数据的最佳方法是:
> road.getCarCountMap()仅返回过去3个月中车辆计数的集合(可能为空)
>我最终得到一些需要很长时间才能处理的疯狂笛卡尔产品...,但检索到的汽车和卡车计数不会附加到roadList中的Road对象.所以当我尝试访问任何Road对象的计数时,我得到一个LazyInitializationException.
4.将地图定义为惰性...,使用criteria.list()加载所有道路,迭代过去3个月内的所有测量日期,以强制加载这些值.