普通的XML结构比较简单,但是复杂的XML如下:
BASIC
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
</soap12:Body>
</soap12:Envelope
复杂点的原因是名称带有冒号,属性也是,没有操作过JAXB是不容易上手,我来记录下实体的代码。
soap12:Envelope节点的实体类:
BASIC
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"body"
})
@XmlRootElement(name = "soap12:Envelope")
public class SoapEnvelope {
@XmlElement(name = "soap12:Body")
private SoapBody body;
@XmlAttribute(name = "xmlns:xsi")
private String xmlnsXsi;
@XmlAttribute(name = "xmlns:xsd")
private String xmlnsXsd;
@XmlAttribute(name = "xmlns:soap12")
private String xmlnsSoap;
public SoapEnvelope() {
this.xmlnsXsi = "http://www.w3.org/2001/XMLSchema-instance";
this.xmlnsXsd = "http://www.w3.org/2001/XMLSchema";
this.xmlnsSoap = "http://www.w3.org/2003/05/soap-envelope";
}
public SoapBody getBody() {
return body;
}
public void setBody(SoapBody body) {
this.body = body;
}
}
XmlRootElement表示的意思是根节点,通过name = "soap12:Envelope"指定根节点的名称。
根节点设置子节点的说明:
BASIC
@XmlElement(name = "soap12:Body")
private SoapBody body
这里意思soap12:Envelope下面还有1个节点叫soap12:Body
根节点设置属性和属性值的说明:
BASIC
@XmlAttribute(name = "xmlns:xsi")
private String xmlnsXsi
以上代码就是通过注解说明此根节点有个属性xmlns:xsi,此属性的值等于String xmlnsXsi的值,我们可以在构造函数中对属性值进行初始化
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有