注释类型的文档@XmlElements
有这个例子:
public class Foo {
@XmlElements(
@XmlElement(name="A", type=Integer.class),
@XmlElement(name="B", type=Float.class)
}
public List items;
}
当您只有几个需要在列表中的已知类型时,这非常有用。我正在寻找一种使其更具动态性的方法,以便在将新元素添加到系统类时Foo
不需要修改。
首先想到的是使用一些自定义注释。让我们调用它@XmlElementType
,它有一个 type 属性,可以应用于元素(Integer
、Float
等)。当然,这不能对预定义类型执行,它只适用于新类型。
然后将注释的变体@XmlElements
应用于List
class 中的项目Foo
。它将有一个属性来指示@XmlElementType
它可以包含的类型,也许是一个用于扫描 POJO 的包。
所以我有两个问题:
- 这样的东西已经存在了吗?
- 如果没有,可以实施这样的事情吗?如果是,现在?