codecamp

XmlElement

@XmlElement

字段,方法,参数级别的注解。该注解可以将被注解的(非静态)字段,或者被注解的get/set方法对应的字段映射为本地元素,也就是子元素。

参数 name

用于指定映射时的节点名称,指定生成元素的名字,若不指定,默认使用方法名小写作为元素名。

参数 namespace

指定映射时的节点命名空间

参数 required

字段是否必须,默认为false

参数 nillable

是否处理空数据,默认为false

参数 type

定义该字段或属性的关联类型

举例

@XmlRootElement
public class Grade {
    private String id;


    private String name;

    
    @XmlElement(name = "名称", defaultValue = "一年级", nillable = true, required = true)
    public void setName(String name) {
        this.name = name;
    }
    ...
}

正常情况下得到的XML数据结构:

<grade>
    <id>1001</id>
    <名称>二年级</名称>
    <ranking>1</ranking>
</grade>

如果name是空值,Grade grade = new Grade("1002", null, 2);

得到的XML数据结构如下:

<grade>
    <id>1002</id>
    <名称 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
    <ranking>2</ranking>
</grade>
XmlAccessorType
XmlAttribute
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

JAXB 简单转化案例

JAXB 之 Trang

简单XML生成——Marshaller数据源

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }