现有应用是缓存java对象,按key放到内存中,但用junit执行测试时,取不到之前放入的内容,所以,怀疑GeneralCacheAdministrator的对象不是全局唯一的。那么,oscache 中GeneralCacheAdministrator能否做到使其是全局唯一的对象呢?不胜感激!!
没让你重写GeneralCacheAdministrator。
自己随便写个类,比如:
[code="java"]
public class MyGlobalStates {
private static GeneralCacheAdministrator gca = new GeneralCacheAdministrator();
public static getGeneralCacheAdministrator() {
return gca;
}
}
[/code]
然后其他类通过MyGlobalStates.getGeneralCacheAdministrator()获得的对象肯定是一样的。
如果你怀疑是两个不同的对象,就试试输出这个对象的.hashCode()。或者干脆输出.toString()。
一种保证方法是用单例模式,使用某个对象的static域。看《设计模式》上有介绍。
另一种是用Spring。