2

我需要一个代表以下 XML 的 VO

<ROWSET>
<ROW>
  <ORDER_NUM>5101330188</ORDER_NUM>
  <LINE_NUM_SEQ>55</LINE_NUM_SEQ>
  <PROD_NUM_REQ>9BX134-505</PROD_NUM_REQ>
</ROW>
</ROWSET>

如何定义代表 Rowset 和 Row 的 2 个 xmlRootElements?我的VO是这样的:

import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement(name = "ROWSET")
public class TestVo {

    String ORDER_NUM;
    String LINE_NUM_SEQ;
    String PROD_NUM_REQ;

    @XmlElement
    public String getLINE_NUM_SEQ() {
        return LINE_NUM_SEQ;
    }

    public void setLINE_NUM_SEQ(String lINE_NUM_SEQ) {
        LINE_NUM_SEQ = lINE_NUM_SEQ;
    }

    @XmlElement
    public String getORDER_NUM() {
        return ORDER_NUM;
    }

    public void setORDER_NUM(String oRDER_NUM) {
        ORDER_NUM = oRDER_NUM;
    }

    @XmlElement
    public String getPROD_NUM_REQ() {
        return PROD_NUM_REQ;
    }

    public void setPROD_NUM_REQ(String pROD_NUM_REQ) {
        PROD_NUM_REQ = pROD_NUM_REQ;
    }

}

我不能有 2 个 XMLROOTELEMENTS 但我需要定义<ROWSET>& <ROW>

4

2 回答 2

4

唯一的解决方案是改变@XmlRootElement(name = "ROWSET")@XmlRootElement(name = "ROW")创造一个像这样的对象

@XmlRootElement(name="ROWSET")
public class Rowset{

    private List<TestVo> vos;
    [...]
}

因为 XML 不能有多个根。

于 2013-05-02T12:25:21.110 回答
0

一个 XML 文件不能有多个根元素,因为这会违反 W3C 标准。根元素是封装 XML 文档的各个元素的容器。有关更多详细信息,请遵循w3c 标准

于 2013-05-02T12:24:39.060 回答