如何命名JAXB类?

时间:2014-08-11 11:23:06

标签: java jaxb

@XmlRootElement
public class MyRoot {
    private List<SubRootDTO> subs;
}

public class SubRootDTO {

}

如何为SubRootDTO类提供明确的JAXB名称?

3 个答案:

答案 0 :(得分:1)

有几种不同的选择:

  1. 使用SubRootDto注释@XmlRootElement,然后在引用它的所有映射字段/属性上使用@XmlElementRef
  2. 使用SubRootDto注释@XmlElement属性。

答案 1 :(得分:0)

@XmlRootElement(name = "subRoot")
public class SubRootDTO {
}

答案 2 :(得分:0)

@XmlRootElement
class MyRoot {
    private List<SubRootDTO> subs;

    ...

    @XmlElementRef(name = "CustomName")
    public List<SubRootDTO> getSubs(){
        return subs;
    }
}

class SubRootDTO {

}

与带SubRootDTO的注释@XmlRootElement(name = "XYZ")相比,@XmlElementRef(name = "ABC")允许您为每个引用命名元素。