@JsonAlias和@JsonProperty都是Jackson的注解
@JSONProperty
@JSONProperty可用于非静态的字段、Getter、Setter方法,作用于序列化和反序列化,例如:
public class Project{
@JsonProperty("projectId")
private String id;
}
适用于JSON属性名和Java字段名不一致时,在转换时会将json中的projectId字段与实体类中的id相对应。当作用于getter或者setter方法时,则分别对应序列化和反序列化操作。
@JsonAlias
允许你为Java对象的属性设置多个名字,作用于反序列化阶段,例如
public class User {
@JsonAlias({ "username", "user_name" })
private String name;
}
此时json中的username和user_name都可以映射到Java实体类User中的name字段。