杰克逊 - 不反序列化字符串" null"为null对象

时间:2016-01-14 09:16:43

标签: java jackson

我使用Jackson 2.6.3将JSON字符串反序列化为Java对象,我在下面有一段代码:

ObjectMapper objectMapper = new ObjectMapper();
HashMap<?, ?> result = objectMapper.readValue("null", HashMap.class);
// result is null 
System.out.println(result == null);

我想知道杰克逊是否有任何配置不能将String "null"转换为null对象但是会抛出异常?

1 个答案:

答案 0 :(得分:0)

我不太了解杰克逊,但是一个简单的方法,也许在您的UtilClass中,如下:

public <T> T deserialize(final ObjectMapper objectMapper, final String jsonString, final Class<T> yourClass) throws Exception 
{
   if(jsonString == null || jsonString.equalsIgnoreCase("null"))
      throw new Exception(); //maybe change the type's exception
   return objectMapper.readValue(jsonString, yourClass);
}