繁体   English   中英

Pojo类(XML到对象)

[英]Pojo Class (XML to Object )

我正在尝试为以下XML创建POJO类,其余的都很好,但是我无法获取参数标签的值,即valueB,valueC。

我已经为下面的xml创建了step,Input和Parameter pojo类,下面提到了其中的参数类代码。

以下是XML:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE step SYSTEM "step.dtd">
<step>
    <class>Step</class>
    <description> test </description>
    <input>
        <parameter name="A" overwrite="yes"/>
        <parameter name="B" overwrite="yes">valueB</parameter>
        <parameter name="C" overwrite="yes">valueC</parameter>      
</input>
</step>

Pojo课程:

public class Parameter
{
    private String name;
    private String parameter; 

    private String content;

    public String getContent ()
    {
        return content;
    }

    public String setContent ()
    {
        return content;
    }



    private String overwrite;
    @XmlAttribute 
    public String getName ()
    {
        return name;
    }

    public void setName (String name)
    {
        this.name = name;
    }

    public String getOverwrite ()
    {
        return overwrite;
    }

    public void setOverwrite (String overwrite)
    {
        this.overwrite = overwrite;
    }

    @Override
    public String toString()
    {
        return "ClassPojo [content = "+content+",name = "+name+", overwrite = "+overwrite+", parameter="+parameter+"]";
    }
}

输入类别:

public class Input
{
    private Parameter[] parameter;

    public Parameter[] getParameter ()
    {
        return parameter;
    }

    public void setParameter (Parameter[] parameter)
    {
        this.parameter = parameter;
    }



    @Override
    public String toString()
    {
        return "ClassPojo [parameter = "+parameter+"]";
    }
}

步骤类:

@XmlRootElement(name="step")
public class Step
{
    private Input input;

    private String description;

    private String class1;

    private Output output;

    public Input getInput ()
    {
        return input;
    }

    public void setInput (Input input)
    {
        this.input = input;
    }

    public String getDescription ()
    {
        return description;
    }

    public void setDescription (String description)
    {
        this.description = description;
    }

    public String getClass1 ()
    {
        return class1;
    }

    public void setClass (String class1)
    {
        this.class1 = class1;
    }

    public Output getOutput ()
    {
        return output;
    }

    public void setOutput (Output output)
    {
        this.output = output;
    }

    @Override
    public String toString()
    {
        return "ClassPojo [input = "+input+", description = "+description+", class = "+class1+", output = "+output+"]";
    }
}

将@XmlValue添加到参数类中的内容字符串中。

您还必须将@XmlAttribute添加到getOverwrite()方法中才能起作用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM