Jaxb编组原始类型

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jaxb编组原始类型相关的知识,希望对你有一定的参考价值。

我有一个原始类型为double和long的类。编组时我必须避免包含零值的变量。尝试@XmlJavaTypeAdapter并在同一个尝试返回null值 - 但失败了。有办法吗?搜索其他主题并找不到解决方案

答案

使用下面的适配器

import javax.xml.bind.annotation.adapters.XmlAdapter;

public class DoubleAdapter extends XmlAdapter<Object, Double> {

public Object marshal(Double value) {
    if(value == Double.MIN_VALUE){
        return null;
    }
    return value;
}

public Double unmarshal(Object value) {
    return (Double)value;

}


}

以上是关于Jaxb编组原始类型的主要内容,如果未能解决你的问题,请参考以下文章

将对象编组为枚举类型时不调用 JAXB XmlJavaTypeAdapter

为啥 JAXB 需要一个无参数构造函数来编组?

JAXB:如何编组列表中的对象?

如何使用 JAXB2 用动态元素编组 XML

JAXB 编组超类

自定义 jaxb 编组输出