杰克逊:在运行时防止字段序列化

时间:2014-05-05 10:00:37

标签: java json serialization jackson

我使用Jackson将java对象转换为JSON。 我遇到了@JsonIgnore注释,它可以阻止属性的序列化。这在处理双向关系时特别有助于防止循环引用错误。有没有办法在运行时执行此操作。 例如,我有一对一对多的关系。

Class A{

private List<B> listOfBs;

}

Class B{

private A a;

}

假设我想序列化A的对象和B的列表 我会在B中使用@JsonIgnore注释在A的吸气器上。

Class B{

private A a;

@JsonIgnore
public A getA(){
return a;

}

}

但是如果同时我需要将B的对象与其中的相关A对象序列化,是否可以告诉运行时,何时在B中序列化A以及何时不序列化。

0 个答案:

没有答案