com.fasterxml.jackson.databind.SerializerProvider#findNullValueSerializer ( )源码实例Demo

下面列出了com.fasterxml.jackson.databind.SerializerProvider#findNullValueSerializer ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: jframework   文件: DoubleSpecifySerialize.java
@Override
public JsonSerializer<?> createContextual(SerializerProvider prov, BeanProperty property) throws JsonMappingException {
    // 为空直接跳过
    if (property == null) {
        return prov.findNullValueSerializer(property);
    }
    // 非 Double 类直接跳过
    if (Objects.equals(property.getType().getRawClass(), Double.class)) {
        DoubleSpecify doubleSpecify = property.getAnnotation(DoubleSpecify.class);
        if (doubleSpecify == null) {
            doubleSpecify = property.getContextAnnotation(DoubleSpecify.class);
        }
        // 如果能得到注解,就将注解的 value 传入 DoubleSpecifySerialize
        if (doubleSpecify != null) {
            return new DoubleSpecifySerialize(doubleSpecify.value());
        }
    }
    return prov.findValueSerializer(property.getType(), property);
}
 
源代码2 项目: jframework   文件: BigDecimalSpecifySerialize.java
@Override
public JsonSerializer<?> createContextual(SerializerProvider prov, BeanProperty property) throws JsonMappingException {
    // 为空直接跳过
    if (property == null) {
        return prov.findNullValueSerializer(property);
    }
    // 非 BigDecimal 类直接跳过
    if (Objects.equals(property.getType().getRawClass(), BigDecimal.class)) {
        BigDecimalSpecify doubleSpecify = property.getAnnotation(BigDecimalSpecify.class);
        if (doubleSpecify == null) {
            doubleSpecify = property.getContextAnnotation(BigDecimalSpecify.class);
        }
        // 如果能得到注解,就将注解的 value 传入 BigDecimalSpecifySerialize
        if (doubleSpecify != null) {
            return new BigDecimalSpecifySerialize(doubleSpecify.value());
        }
    }
    return prov.findValueSerializer(property.getType(), property);
}
 
源代码3 项目: pre   文件: SensitiveInfoSerialize.java
@Override
public JsonSerializer<?> createContextual(final SerializerProvider serializerProvider, final BeanProperty beanProperty) throws JsonMappingException {
    // 为空直接跳过
    if (beanProperty != null) {
        // 非 String 类直接跳过
        if (Objects.equals(beanProperty.getType().getRawClass(), String.class)) {
            SensitiveInfo sensitiveInfo = beanProperty.getAnnotation(SensitiveInfo.class);
            if (sensitiveInfo == null) {
                sensitiveInfo = beanProperty.getContextAnnotation(SensitiveInfo.class);
            }
            // 如果能得到注解,就将注解的 value 传入 SensitiveInfoSerialize
            if (sensitiveInfo != null) {
                return new SensitiveInfoSerialize(sensitiveInfo.value());
            }
        }
        return serializerProvider.findValueSerializer(beanProperty.getType(), beanProperty);
    }
    return serializerProvider.findNullValueSerializer(beanProperty);
}
 
源代码4 项目: Resource   文件: SensitiveSerialize.java
@Override
public JsonSerializer<?> createContextual(SerializerProvider prov, BeanProperty property)
    throws JsonMappingException
{
    if (property != null)
    {   // 为空直接跳过
        if (Objects.equals(property.getType().getRawClass(), String.class))
        { // 非 String 类直接跳过
            SensitiveInfo sensitiveInfo = property.getAnnotation(SensitiveInfo.class);
            if (sensitiveInfo == null)
            {
                sensitiveInfo = property.getContextAnnotation(SensitiveInfo.class);
            }
            if (sensitiveInfo != null)
            {   // 如果能得到注解,就将注解的 value 传入 SensitiveInfoSerialize
                SensitiveSerialize serialize = new SensitiveSerialize();
                serialize.type = sensitiveInfo.value();
                return serialize;
            }
        }
        return prov.findValueSerializer(property.getType(), property);
    }
    return prov.findNullValueSerializer(property);
}