是否有可能忽略JSON序列化(用于Web显示)的字段而不用于mongo(内部序列化)?
到目前为止,我已尝试过所有这些方法,但Mongo也忽略了字段,或者在某些变化的情况下都没有忽略
答案 0 :(得分:1)
好的,我终于解决了这个问题。
objectMapper.writerWithView(Views.Public.class).writeValueAsString(lo));
writeValueUsingView来自Jackson的另一个版本,所以它没有工作
答案 1 :(得分:0)
使用@JsonView注释可以解决web / mongo的自定义序列化,请尝试以下几行:
class Views {
static class OnAllViews {}
static class OnlySomeViews extends OnAllViews {}
...
}
public class Thing {
@JsonView(Views.OnAllViews.class) Integer id;
@JsonView(Views.OnlySomeViews.class) String name;
}
然后您可以通过writeValueUsingView
方法调用适当的序列化级别。
objectMapper.writeValueUsingView(out, beanInstance, ViewsPublic.class);
您可以详细了解here。