【发布时间】:2015-12-24 20:50:03
【问题描述】:
我对 xstream 很陌生。 我正在研究如下所示的模型类:
@XStreamAlias("MyRootClass")
public class MyRootClass {
// A bunch of other classes as child nodes
@XStreamAlias("MyClassList")
private List<MyClass> foo;
}
现在,我有没有办法在编组时生成以下 XML,而无需修改类?
<MyRootClass>
<!-- a bunch of other class nodes -->
<MyClassList COUNT="3">
<MyClass>MyClass 1</MyClass>
<MyClass>MyClass 2</MyClass>
<MyClass>MyClass 3</MyClass>
</MyClassList>
</MyRootClass>
主要问题是如何优雅地将属性“COUNT”添加到 MyClass 的列表中。它将始终显示 MyClassList 中的 MyClass 的数量。
我不允许修改模型类。但是,我可以实现自己的转换器来实现上述目的。
问题是:最好的方法是什么? MyRootClass 中有许多其他(复杂的)类,它们都被别名和注释。那么,从头开始创建一个“元帅”方法可能是矫枉过正吗?
【问题讨论】: