我们将为我们的项目实施 gemfire。我们目前正在将 gemfire 缓存与我们的 DB2 数据库同步。因此,我们在将数据库数据放入缓存时遇到了问题。
将数据库数据放入区域。我已经实现com.gemstone.gemfire.cache.CacheLoader
并覆盖了它的加载方法。正如java doc load 方法所写的,只会返回一个Object。但是对于我们的要求,我们将不得不从 load 方法返回多个 VO
public List<CmDvceInvtrGemfireBean> load(LoaderHelper<CmDvceInvtrGemfireBean, CmDvceInvtrGemfireBean> helper)
throws CacheLoaderException
在以List<CmDvceInvtrGemfireBean>
gemfire 区域的形式返回多个 VO 时,将其视为单个值。
所以,当我调用时,
System.out.println("return COUNT" + cmDvceInvtrRecord.query("SELECT COUNT(*) FROM /cmDvceInvtrRecord"));
它返回一个计数。但我可以看到总共 7 个数据。
所以,我想实现一种机制,将所有 7 个值作为单独的 VO 在 Region
有没有办法使用 Gemfire CacheLoader 来做到这一点?