谢谢Banq老师的回答!
查询分页并不是单指搜索查询,应该是查询操作吧,例如有一个论坛,现在得获取这个论坛的所有贴子主题然后分页,因为此论坛日访问量不低,是否应写入缓存中以能够其提高性能呢?
在PageIteratorSolver类中的cacheEnable默认为true,而在getPageIterator方法中有下列一段:
String queryKey = getQueryKey(queryParam, sqlquery, start, count);
CacheKey cacheKey = getCacheKey(queryKey);
pageIterator = (PageIterator) cacheManager.fetchObject(cacheKey);
if ( (pageIterator == null) || (!cacheEnable) )
{
pageIterator = pageIteratorJDBC.fetchDatas(queryParams, sqlquery, start, count);
int allCount = getDatasAllCount(queryParams, sqlqueryAllCount);
pageIterator.setAllCount(allCount);
if ( (cacheEnable) && (pageIterator != null))
{
cacheManager.putObect(cacheKey, pageIterator);
cacheKeyList.add(cacheKey);
}
}
这应该是先从cache中提取PageIterator吧,如果提取到的PageIterator为空,再重新从数据库中查询得到,然后再将pageIterator写入cache中。从流程中来看应该是将查询结果写入到缓存中了啊,可实际上确没有。
JdonFrameWork真是太精辟了,有些地方还没太搞明白,所以还请Banq老师别嫌我烦!