10
一个项目需要将以下Jackson注释组合在一起使用。那么,有没有一种方法来创建另一个注解,以避免难看的复制/粘贴:创建一个自定义的Jackson注释
public class A {
@JsonProperty("_id")
@JsonSerialize(using=IdSerializer.class)
@JsonDeserialize(using=IdDeserializer.class)
String id;
}
public class B {
@JsonProperty("_id")
@JsonSerialize(using=IdSerializer.class)
@JsonDeserialize(using=IdDeserializer.class)
String id;
}
public class C {
@CustomId // don't repeat that configuration endlessly
String id;
}
更新:我想这一点,但没有成功:-(
@Retention(RetentionPolicy.RUNTIME)
@JacksonAnnotationsInside
@JsonProperty("_id")
@JsonSerialize(using=IdSerializer.class, include=JsonSerialize.Inclusion.NON_NULL)
@JsonDeserialize(using=IdDeserializer.class)
public @interface Id {}
public class D {
@Id
private String id;
}
我不明白这一点,你可以请提供它会是什么样子的例子吗?谢谢。 –
@yvesamsellem我用更多的代码编辑了我的答案 – emory
好的。这似乎是第一个有趣的步骤。任何想法只收集串行器和解串器?非常感谢。 –