我有一个不允许更改的 xsd 架构。它产生生成的java类。
假设类如下所示:
class Data {
protected List<Value> value;
...
}
class Value {
...
}
现在我需要拥有自己的 MyValue 以从 Value 扩展。
class MyValue extends Value {
Integer myOwnField1;
Long anotherProperty;
}
并且能够在解析 xml 文件时说 unmarshaller 使用 MyValue 而不是 Value。
稍后我将能够使用 MyValue 可以在其中包含一些有用的新字段的事实,对它们进行操作,更改它们等。所以我想扩展我在模式中拥有的功能而不更改它。
对于解组器,是否有可能用 MyValue 替换 Value ?
除了创建 Map 的明显方法外,我可以在其中映射由 unmarshaller 生成的对象,以及 MyValue 中我自己的字段和属性。我想避免这种方式。