当前位置: 首页 > 面试题库 >

Jackson:将空字符串反序列化为空字符串

空英逸
2023-03-14
问题内容

我有以下类,它是由Jackson映射的(简化版):

public class POI {
    @JsonProperty("name")
    private String name;
}

在某些情况下,服务器会返回,"name": null然后我想将name设置为空的Java String。

是否有任何Jackson注释,或者如果属性为,我应该只检查getter中的null并返回空字符串null


问题答案:

您可以在默认构造函数中或声明时进行设置:

public class POI {
    @JsonProperty("name")
    private String name;

    public POI() {
        name = "";
    }
}

要么

public class POI {
    @JsonProperty("name")
    private String name = "";
}


 类似资料:
  • 我有以下由Jackson映射的类(简化版): 在某些情况下,服务器返回,然后我想将name设置为空Java字符串。 是否有任何Jackson注释,或者如果属性为,我应该只检查getter中的null并返回空字符串吗?

  • 我有多个POJO,对于其中的一些,我希望将所有空字符串反序列化为。

  • 我有一个Android应用程序,与Spring开发的RESTAPI联系。应用程序很好地序列化了一个对象,但是Spring应用程序在每个字段不为null时将其解析为null。有什么不对劲?我该怎么办? 这是REST API方法签名:cambioPassword(@quiestHeader(授权)字符串头,PasswordChange userData) 注意:应用程序和API都使用Gson(我没有在

  • 我想从属性转换空字符串值,并在API响应模型对象中用替换它。 我尝试了这个解决方案,但它在类级别上不起作用。

  • 我已经找了很多但仍然没有得到答案到目前为止,任何帮助是非常感谢! 我有一个简单的到字段映射,并尝试将JSON字符串读取到Java对象。 例外情况: java.lang.IllegalArgumentException:无法解析日期值“null”(格式:“dd-mmm-yyyy”):不可解析日期:“null”com.fasterxml.jackson.databind.deser.std.dateD

  • 我尝试将以下json反序列化为java POJO。 我使用jackson 2.8.6 但我不断得到以下例外情况: 如果我为它添加一个字符串设置器 摘要:一些(设计错误的)API发送给我的是空字符串()而不是,我不得不告诉Jackson忽略这个错误的值。我怎么能这么做?