SOAP解析器,如GSON? [关闭]

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

是否有像GSON这样的免费开放源代码的SOAP解析器,它将自动将解析的数据映射到相应的bean?如果没有,您可以推荐一个不错但是免费的开源SOAP解析器吗?

java json soap jaxb xml-parsing
1个回答
4
投票

您可以尝试JAXB(用于XML绑定的Java体系结构)API。看一下示例:

Xml文档

<?xml version="1.0" encoding="UTF-8"?>
<Root>
    <Child>
        <foo>10</foo>
    </Child>
    <Child>
        <foo>20</foo>
    </Child>
</Root>

Java POJO代表XML模式

@XmlRootElement(name="Root")
class Bar{
  private List<Foo> list=new ArrayList();   
  @XmlElement(name="Child")
  public List<Foo> getList(){ return list;}
}
class Foo{
    private Integer foo;
    public Foo(){ foo=0;}
    public Foo(Integer foo) { this.foo=foo;}
    public Integer getFoo() { return foo; }
    public void setFoo(Integer foo){ this.foo=foo;}
}

要从XML读取Java对象

JAXBContext context=JAXBContext.newInstance(Bar.class);
Unmarshaller um=context.createUnmarshaller();

Bar bar=(Bar)um.unmarshal(new File("x:\\path\\xmldoc.xml")); // you may specify the URL too.

System.out.println(bar.getList());
for(Foo c:bar.getList()){
    System.out.println(c.getFoo());
}
© www.soinside.com 2019 - 2024. All rights reserved.