使Jackson在序列化时不输出类名(使用Spring MVC)

时间:2010-07-21 19:56:17

标签: java spring-mvc annotations serialization jackson

有没有办法强迫杰克逊不要把类名放在Json输出中?我问question导致了这个问题,但我问我希望什么是一个更有针对性的问题。我正在使用Spring MVC,但我不确定这有多重要。

所以,而不是


{"NamedSystem":{"name":"Bob Dole","id":"0198b96c-fe18-4aa6-9e61-b5f7149414c2"}}

我想要


{"name":"Bob Dole","id":"0198b96c-fe18-4aa6-9e61-b5f7149414c2"}

我可能更喜欢前者,但我不知道如何让杰克逊在反序列化时识别班级名称,所以如果有人知道,那也会有所帮助。

3 个答案:

答案 0 :(得分:4)

由于http://pascaldimassimo.com/2010/04/13/how-to-return-a-single-json-list-out-of-mappingjacksonjsonview/#comment-4

,我找到了一种使用Spring MVC的方法

我实际上已经沿着那条路走下去了(改变它被Spring序列化的方式)并且有类似但不完全相同的东西(并且它不起作用),但这完全可以解决这个问题。

答案 1 :(得分:2)

不知道该怎么做,但我认为是Spring添加了这个名字。杰克逊本身不会默认这样做。所以它可能更多是SpringMVC的问题。

答案 2 :(得分:1)

我认为您必须编写一个处理数据的自定义序列化程序。 This可以帮助您实现这一目标。