我从memcached获取值,并尝试转换类的列表,但我得到了类异常,像这样java.lang.String不能被转换为java.util.List,有人能帮忙吗?主题是POJO类
代码
MemCachedClient mc = new MemCachedClient();
List<Topic> topicList = (List<Topic>) mc.get("topics");错误
java.lang.ClassCastException: java.lang.String cannot be cast to java.util.List在memcache中,键“Topic”仅包含Topic类的列表
我的memcache add和get代码是public void add(String key, Object value) { System.out.println("The Object Values are:"+value.getClass().getName()); mcClient.set(key, value); } public Object get(String fqn) { System.out.println("Gets class Name:"+mcClient.get(fqn).getClass()); return mcClient.get(fqn); }
我的结果是The Object Values are:java.util.LinkedList Gets class Name:class java.lang.String
在添加到memcached时,它是在链表中,但我从memcache中获得了值,它是字符串,我不知道为什么。
有人能帮上忙吗……?
发布于 2015-05-29 18:15:18
看起来mc.get("topics")返回的是List<String>,而不是您期望的List<Topic>。你能仔细检查一下你存储在缓存里的东西吗?
https://stackoverflow.com/questions/30526328
复制相似问题