在我们的代码中,我们在java文件中导入了org.codehaus.jackson。现在我们将移至com.fasterxml.jackson。
平滑渐变需要考虑哪些要点?
答案 0 :(得分:0)
以下是在Jackson 1.9.x和Jackson 2.9.8之间确定的一些更改
1. org.codehaus.jackson更改为com.fasterxml.jackson
2. org.codehaus.jackson.map更改为com.fasterxml.jackson.databind
3.更改了SerializationConfig.Feature并将其吐到SerializationFeature,MapperFeature
4. DeSerializationConfig.Feature更改并拆分为DeSerializationFeature,MapperFeature
5. AnnotationIntrospector.Pair更改为AnnotationIntrospectorPair
6. SerializationConfig.withAnnotationIntrospectro(...)更改为SerializationConfig.with(...)
7. ObjectMapper.getSerilizationConfig()。addMixInAnnotations(...)更改为ObjectMapper.addMixIn(....)
8. JSonSerialize.include更改为JSonInclude
9. ObjectMapper.readValue(JSonNode,...)更改为OjbjectMapper.readValue(ObjectMapper.treeAsTokens(JSonNode),...)
答案 1 :(得分:0)
我想在@Ravi的答案中再加一点。
在jackson-databind-2.9.8中,默认情况下java.sql.Date将被序列化为数字时间戳,而不是StdDateFormat。当预期日期格式为StdDateFormat时,这将特别引起问题。
java.sql.Date 根据databind#219,java.sql.Date将最终使用与java.util.Date和java.util.Calendar相同的“时间戳或字符串”确定。这意味着在原始设置不变的情况下,值将被序列化为数字时间戳。请注意,默认的String序列化仍将默认为java.sql.Date.String(),而不是java.util.Date使用的默认格式。
答案 2 :(得分:-1)
从jackson-1.X升级到jackson 2.X
将 get 方法名称更改为直接名称
例如:
jackson-1.X方法: getBooleanValue(),getFields(),getElements(),getIntValue()
jackson-2.X方法: booleanValue(),fields(),elements()和intValue()