在EhCache中,向缓存添加元素时:
cache.put(new Element("key1", "value1"));
// Element constructors :
Element(Object key, Object value)
我看到我可以给Object
作为关键索引。
如何使用它来生成一个“复杂”键,由多个int组成:(userId,siteId,...)
而不是字符串作为索引?
由于
答案 0 :(得分:14)
将它包装在一个新类中:
public class CacheKey implements Serializable {
private int userId;
private int siteId;
//override hashCode() and equals(..) using all the fields (use your IDE)
}
然后(假设您已经定义了适当的构造函数):
cache.put(new Element(new CacheKey(userId, siteId), value);
对于简单的情况,您可以使用字符串连接:
cache.put(new Element(userId + ":" + siteId, value));