一,数据怎么消失了?
前几天往 Velocity 里写数据时,忘记指定 region 了,设定的是 24 小时过期,如果不指定 region 也应该在 default region 里存 24 个小时啊?但是数据大概存了两个小时,就消失不见了。保存时指定的键值在所有应用里,也是唯一的。后来指定了 region ,数据才保存了下来,真是奇了怪了。
二,构造函数
由于需要,要把某个 ID 从外部(xml ,方便修改)传入到 类 A ,而这个ID是必须的,怎么办呢?我给类的构造函数指定了一个参数,这样就可以保证这个ID有值。
但是在保存到 Velocity 的时候,提示 序列化失败 ,我很纳闷,只是加了一个构造函数而以。原来没有指定构造函数,即默认的无参构造函数,什么事也没有。我加了一个无参的构函数进去,在运行,搞定。
三,属性
由于指定了无参的构函数,所以,不能保证那个ID会被其他程序员写进去,所以,我换了一个方法,在另外一个类 B 里加了一个只读的属性,存放的是 List<A> ,然后加了一个方法,AddA(A a). 由于 那个 List<A> 是只读的,所以,只能通过 AddA 来往里写数据,这样我在 AddA 的时候,可以给传入的参数加 ID, 可以保证每个 A 的 ID 都有值。
结果,在写入 Velocity 的时候,提示 反序列化 失败, 属性缺少 SET。。。。
总结:
要保到Velocity 的对象,一定要有一个无参的构造函数,属性一定是可读可写的。如果有不对的地请,谢谢指正。
至于数据怎么消失了,我搞不清楚,因为我本地一开始也是那写的,但是数据一直存在,没有提前消失。
| < Prev | Next > |
|---|



