Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Jackson有条件地禁用枚举键_Java_Enums_Jackson - Fatal编程技术网

Java Jackson有条件地禁用枚举键

Java Jackson有条件地禁用枚举键,java,enums,jackson,Java,Enums,Jackson,我正在使用JavaJackson对json进行动态序列化和反序列化 我想要一个自定义注释@JsonDebug,它将基本上打开/关闭 字段等,具体取决于静态变量调试模式。其思想是,如果使用注释标记枚举键, 当序列化/反序列化进程处于打开状态时,它不应可用 问题是,我找到的唯一方法是为我想要的枚举实现自定义序列化器/反序列化器,这不是一个通用的解决方案,或者重写现有的枚举序列化/反序列化过程,这对于单个注释处理来说有点过分。我尝试使用AnnotationIntroScotor并重写hasIgnore

我正在使用JavaJackson对json进行动态序列化和反序列化

我想要一个自定义注释@JsonDebug,它将基本上打开/关闭 字段等,具体取决于静态变量调试模式。其思想是,如果使用注释标记枚举键, 当序列化/反序列化进程处于打开状态时,它不应可用

问题是,我找到的唯一方法是为我想要的枚举实现自定义序列化器/反序列化器,这不是一个通用的解决方案,或者重写现有的枚举序列化/反序列化过程,这对于单个注释处理来说有点过分。我尝试使用AnnotationIntroScotor并重写hasIgnoreMarker的行为,这是它处理字段的方式,但它不会忽略枚举键。我认为mixin注释可能是一种方法,但它们只适用于具有指定字段名的指定类。我发现,即使键上有ignore注释,它们仍然序列化/反序列化到json或从json中序列化