网上这类资料很少,自己总结一下:
@Data
@AllArgsConstructor
public static enum Event {
FORGOT_PASSWORD("forgot password",200),
GET_PASSWORD("get password",2001);
private final String value;
private final int code;
}
jackson的枚举序列化
默认序列化为enum的name
Event.GET_PASSWORD序列化为”GET_PASSWORD”
反序列化也一样,只有string为”GET_PASSWORD”才可以反序列化为Event.GET_PASSWORD
自定义序列化字段,通过@JsonValue注解,指定哪个字段用于序列化和反序列化
@Data
@AllArgsConstructor
public static enum Event {
FORGOT_PASSWORD("forgot password",200),
GET_PASSWORD("get password",2001);
private final String value;
private final int code;
@JsonValue
public int toValu1e(){
return this.code;
}
}
这样就可以 通过”200″序列化为Event.GET_PASSWORD
版权声明:本文为qq_35232663原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。