默认的jackon行为似乎同时使用属性(getter和setter)和字段来序列化和反序列化为json。
我想将这些字段用作序列化配置的规范来源,因此根本不希望杰克逊查看属性。
我可以使用注解在单个类的基础上执行此操作:
@JsonAutoDetect(fieldVisibility = Visibility.ANY, getterVisibility = Visibility.NONE, setterVisibility = Visibility.NONE)
但是我不想在每堂课上都讲这个...
是否可以全局配置?喜欢添加一些到对象映射器?
1
蒂姆给出了一个很好的答案。另一种可能性是,如果您有一个通用的基类,则可以在该基类上添加类注释。批注由Jackson继承。
—
StaxMan 2011年
我想我已经尝试过了,但是似乎您必须告诉子类使用基本情况所定义的内容……
—
Michael Wiles
不可以,除非子类覆盖了类注释,否则父对象的注释就好像它们是子类定义的一部分一样可见(如果不是,这将是一个错误)。这不一定是JDK处理注释的方式,但是Jackson会对注释(甚至是方法注释)实现完全继承。
—
StaxMan
当心
—
OndraŽižka18年
INFER_PROPERTY_MUTATORS
标志。如果存在可见的吸气剂或吸气剂,它将强制设定者的可见性。