如何创建注释,例如与另一个Jackson注释等效的@DateOutput,例如:
@Column(insert="false", update="false")
private String genre;
或理想情况下,对一组注释,例如
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd'T'HH:mm:ss.SSSZ", timezone="UTC")
答案 0 :(得分:3)
您可以使用@JacksonAnnotationsInside
作为注释容器,如下所示:
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD, ElementType.METHOD})
@JacksonAnnotationsInside
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd'T'HH:mm:ss.SSSZ", timezone="UTC")
public @interface DateOutput {
}
并使用它来注释类中的字段,如下所示:
public class Foo {
@DateOutput
private Date date;
}
您还可以在一个注释下捆绑一组注释:
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD, ElementType.METHOD})
@JacksonAnnotationsInside
@JsonSerialize(using = XSerializer.class)
@JsonDeserialize(using = XDeserializer.class)
public @interface MyAnnotation {
}