0

我有一个 XML 流,其中包含两个不同元素中的日期和时间。我将其反序列化为包含两个字符串字段的“匹配”对象:

@Element
public String MatchDate;

@Element
public String MatchStartTime;

这工作正常,但我想将这两个值合并到一个日历对象中,因为我稍后在代码中必须从日期中减去几秒钟。所以我的课堂上有一个额外的领域:

public Calendar MatchCal;

没有注释,因为它不是 XML 的一部分。

在初始序列化之后,我可以轻松地浏览列表中的所有元素,如果忽略使用这种方法的性能开销,也许这就是要走的路。

但是......是否可以在反序列化过程中“动态”填充我的 MatchCal 对象。

如果是这样怎么办?

4

1 回答 1

1

根据教程:

http://simple.sourceforge.net/download/stream/doc/tutorial/tutorial.php#callback

我认为@Commit注释对你有用。这将允许您在反序列化过程完成之前执行逻辑。

例如)

@Commit
public void setCalendar() {
    matchCal = new GregorianCalendar();
    // parse and set time, etc
}
于 2013-08-21T12:54:02.510 回答