@DateTimeFormat、@JsonFormat、@JsonIgnore、@JsonProperty、@JsonInclude、@JSONField
@DateTimeFormat
- 用途:入参格式化
- 用于:@RequestParam入参,@RequestBody对象属性
- 来源:spring-context
@JsonFormat
- 用途:出参格式化
- 用于:对象属性
- 来源:jackson
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date date;
@JsonIgnore
- 序列化/反序列化时均忽略该属性
- 用于:对象属性
- 来源:jackson
@JsonIgnore
private String password;
@JsonProperty
- 用途:对象属性,该属性序列化/反序列化时重命名,access字段可以控制允许序列化、反序列化。例如access = JsonProperty.Access.WRITE_ONLY在出参时忽略,access = JsonProperty.Access.READ_ONLY在入参时忽略。详见
com.fasterxml.jackson.annotation.JsonProperty
- 用于:对象属性
- 来源:jackson
@JsonProperty("username")
private String name;
@JsonInclude
- 用途:根据对象属性的值决定序列化
- 用于:对象属性
- 来源:jackson
@JSONField
- 来源:fastjson,作用类似@JsonProperty