关于我的previous linked in question,我对@JsonAutoDetect
的可用性有些困惑。
我通过向FieldValues类添加@Getter
并删除了@JsonAutoDetect
来解决了这个问题。
现在让我思考,可以使用@JsonAutoDetect
的情况是什么,因为我可以不用获得相同的结果。在具有getter方法的同时进行@JsonAutoDetact
注释的目的是什么?我想念什么吗?
无法为上一个问题写任何评论,因此创建了一个新问题。
答案 0 :(得分:0)
这是我认为可以为您提供帮助的文章。网址为https://www.baeldung.com/jackson-jsonmappingexception。
就我而言,如果您使用jackson-databind
jar,则使用spring底层使用ObjectMapper
来序列化JavaBean。如果javaBean的field和getter方法都不是公共的,则spring无法自动序列化JavaBean。注释@JsonAutoDetect
用于自定义JavaBean,通过这种方式,您可以将字段限制设置为任何级别(例如,受保护的public private ...这样就可以成功序列化JavaBean)。
如果我听错了,@Getter
来自lombok
,它会自动帮助您生成公共获取方法。