【问题标题】:Issues in Parsing XML解析 XML 中的问题
【发布时间】:2012-05-09 10:10:56
【问题描述】:

我已经有类了,我想看看有没有办法把下面的XML映射到现有的类中。

现有 XML(jdom 元素)

 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Details>
<Uniqueno>11111</Uniqueno>
<ROWSET name="Persons">
<ROW num="1">
<Name>60821894</Name>
<Age>938338789</Age>
</ROW>
<ROW num="2">
<Name>60821894</Name>
<Age>938338789</Age>
</ROW>
</ROWSET>
</Details>

现有类

    @XmlRootElement(name = "Details")
    @XmlAccessorType(XmlAccessType.FIELD)
    class Details{
          @XmlElement(name="Uniqueno")
        String Uniqueno;
        @XmlElement(name="ROWSET")
        private Persons[] persons;

        //setters & getters
    }

    @XmlRootElement(name = "Persons")
    @XmlAccessorType(XmlAccessType.FIELD)
    class Persons{
        @XmlElement(name="name")
        String name;
        @XmlElement(name="age")
        String age;

        //setters & getters
    }

我遇到的问题是:我在 XML 中有一个 ROW num 无法映射,有什么方法可以在不改变 XML 结构的情况下映射相应的类?

【问题讨论】:

标签: java xml jaxb xml-parsing jdom


【解决方案1】:
This Code Would work 

@XmlRootElement(name = "Details")
@XmlAccessorType(XmlAccessType.FIELD)
class Details
{
    @XmlElement(name = "Uniqueno")
    String Uniqueno;   


    @XmlElement(name = "ROWSET")
    private Persons[] persons;

    // setters & getters
}

@XmlRootElement(name = "ROWSET")
@XmlAccessorType(XmlAccessType.FIELD)
class Persons
{
    @XmlAttribute
    String name;

    @XmlElement(name = "ROW")
    private Row[] rows;


    // setters & getters
}

@XmlRootElement(name = "ROW")
@XmlAccessorType(XmlAccessType.FIELD)
class Row
{

    @XmlAttribute
    String num;

    @XmlElement
    String Name;

    @XmlElement
    String Age;

    // setters & getters
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-11
    • 2011-10-11
    相关资源
    最近更新 更多