objectmapper只序列化特定的字段



我想写一个函数,它只序列化具有给定隐式字段名的POJO。

例如,

class Car{
public int id;
public String type;
public Manufacture manufacture;
}
Class Manufacture{
public int id;
public String name;
}

如果我想用一个给定的列表序列化一个Car对象(例如:(Car.id,Car.Manufacture.name](然后我想得到

{
Car:{
id: xxx,
Manufacture: {
name: xxx
}
}
}

另一个例子,给定list = [Car.type
那么我应该得到

{
Car:{
type: xxx
}
}

我正在尝试覆盖serializeAsField方法来检查字段是否在给定的列表中,但这里的问题是我不知道深度,那么我就不能正确地将当前字段与列表进行比较。

我怎样才能做到呢?还有别的办法吗?

@JsonIgnore注释标记不需要的字段。

实时过滤
这是一篇讨论使用过滤器来确定哪些字段被序列化:https://www.baeldung.com/jackson-serialize-field-custom-criteria

我怀疑这就是你想要的答案。

相关内容

  • 没有找到相关文章

最新更新