如何使用XMLMapper的键值对反序列化XML

问题描述 投票:0回答:1

我有一个非常简单的XML文件,但似乎无法将其反序列化回POJO。

文件看起来像:

<?xml version="1.0"?>
<Settings>
    <property name="a"  value="1"/>
    <property name="b"  value="2"/>
    <property name="c"  value="3"/>
    [...]       
</Settings>

使用非常简单的方法

  public void convertXml() {

    try {
      final XmlMapper xmlMapper = new XmlMapper();
      final Configuration configuration = xmlMapper.readValue(rawXml.getFile(), Configuration.class);

      log.info("Configuration parsed {}", configuration);

    } catch (final IOException e) {
      e.printStackTrace();
    }
  }

以及我认为应该进入的几门课

public class Configuration {    
  private Settings settings;
}


public class Settings {
  private List<Property> property;
}


public class Property {
  private String name;

  private String value;
}

但是,配置对象的Settings属性只有一个空值。

我错过了这里的明显之处吗?

java xml objectmapper
1个回答
0
投票
@JacksonXmlRootElement(localName = "Settings") public class Configuration { @JacksonXmlElementWrapper(useWrapping = false) private List<Property> property; }
© www.soinside.com 2019 - 2024. All rights reserved.