繁体   English   中英

如何通过XStream库在不知道对象结构的情况下将XML转换为Java对象

[英]How to convert XML to Java Object without know the structure of the Object through XStream Library

如果我们知道对象的结构,则可以使用“ useAttributeFor”方法和别名来映射相同的标记名和类变量。 但是我的要求是在不知道对象结构的情况下将xml文件转换为对象。 例如,我们有一个XML文件test.xml,其内容为:

<test>
     <Name>John</Name>
     <age>18</age>
</test>

现在,我需要将此xml文件转换为对象。 我的Java类如下:

 public class Test
 {
    private String Name;
    private int age;
    public void setName(String Name,int age)
    {
       this.Name = Name;
       this.age = age;
    }
    public void display()
    {
       System.out.println("Name: "+Name);
       System.out.println("Age: "+age);
    }
 }

我是新来的,所以请帮帮我,谢谢大家

假设您需要从xml文件加载配置。

<test>
     <name>John</name>
     <age>18</age>
</test>

然后要将其加载到Configuration对象中:

public class Test
 {
    private String name;
    private int age;
    public void setName(String name,int age)
    {
       this.name = name;
       this.age = age;
    }
    public void display()
    {
       System.out.println("Name: "+name);
       System.out.println("Age: "+age);
    }
 }

您要做的是:

    FileReader fileReader = new FileReader("test.xml");  // load your xml file 
    XStream xstream = new XStream();     // init XStream
    // define root alias so XStream knows which element and which class are equivalent
    xstream.alias("test", Test.class);   
    Test test = (Test) xstream.fromXML(fileReader);`

就这样 !

暂无
暂无

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

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