假如我缓存中有 message 对象,该对象有 message.author,而这个 author 也是缓存中的一个对象
现在我在别的地方把 author clean 了,但 message 还在,如何让 message 知道呢?难道每次清楚一个 user 对象都要手动通知相关对象?好象无法做到啊
假如我缓存中有 message 对象,该对象有 message.author,而这个 author 也是缓存中的一个对象
现在我在别的地方把 author clean 了,但 message 还在,如何让 message 知道呢?难道每次清楚一个 user 对象都要手动通知相关对象?好象无法做到啊
现在只有在业务层手工进行更新,因为Model对象是你设计的,你有责任负责保证他们状态的一致性,就象你考虑事务隔离级别来保持数据状态一致性一样。
} else {
//首先从缓存中获取
ModelKey modelKey = new ModelKey(dataKey, modelClass);
model = modelManager.getCache(modelKey);
我们查询缓存,这个缓存是存在的,而实际上它已经不完整了,但是程序不知道,所以它不会自动去更新,从而产生 null
但是我们在清除某个 modle 的时候又无法知道引用它的其它 modle,从而也无法对其做相应处理。
至于清除Model缓存更多细节,可见JF文档:
http://www.jdon.com/jdonframework/doc/JdonFramework015.htm
另外,官方的论坛首页,每个分类的最后发帖好像也是不同步的,显示的和进入该板块的实际最后发帖不一致
目前我也在调试这些BUG。