当前位置:编程学习 > JAVA >>

memcache取出的数据完全乱了

我发现  memcache有个问题;

情况一:
内网:
比如A机器是memcache服务器,B机器是应用服务器;

我的程序部署在B服务器上;页面的数据是从A机器的memcache中获取的。

index.jsp页面代码:

communityList=(List<WmCommunity>) MemCachedManager.get("index-communityList");
if(communityList==null){
communityList=dynamicService.findWmCommunity(5);
MemCachedManager.set("index-communityList", communityList, new Date(Constants.MEMCACHEDATE));
}

personList=(List<Map>) MemCachedManager.get("index-personList");
if(personList==null){
personList=dynamicService.findWmPersonInfo(5);
MemCachedManager.set("index-personList", personList, new Date(Constants.MEMCACHEDATE));
}

companyList=(List<Map>) MemCachedManager.get("index-companyList");
if(companyList==null){
companyList=dynamicService.findWmCompanyInfo(5);
MemCachedManager.set("index-companyList", companyList, new Date(Constants.MEMCACHEDATE));
}


我F5狂刷新;index.jsp页面;发现 memcache取出的数据全部乱了;得到的值不对!
比如:communityList  获取的结果  居然是 personList 的值。


情况二:
当我把memecache装到我本地;访问本地的memcache;不管怎么刷都不会出现问题。



请各位大神帮忙啊!  困惑了好久了!
--------------------编程问答-------------------- --------------------编程问答-------------------- communityList  获取的结果  居然是 personList 的值。
怎么可能呢,如果读取到的是personList ,那么List<Map>在强制转换成List<WmCommunity>的时候就会报错,你还能读取成personList?
补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,