Java对象中的属性名称序列化为另一个名称
2022-04-23 本文已影响0人
wyn_做自己
今日份鸡汤:能够拯救你的,只能是你自己,不必纠结于外界的评判,不必掉进他人的眼神。
使用背景:
对属性名称重命名,比如在很多场景下Java对象的属性是按照规范的驼峰书写,但在数据库设计时使用的是下划线连接方式,此处在进行映射的时候就可以使用该注解。
来说两个注解用于属性上,把该属性的名称序列化为另外一个名称~
第一种:Gson中的@SerializedName注解
@Data
public class Person {
@Expose
@SerializedName("_name")
private String name;
@Expose
@SerializedName("_age")
private int age;
}
第二种:Jackson中的@JsonProperty注解
使用该注解将以下表结构转化为Javabean:

@Data
public class CustomerInfo{
private int id;
//使用 @JsonProperty注解将表结构中的字段映射到实体类中
@JsonProperty("customer_name")
private String customerName;
@JsonProperty("customer_id")
private String customerId;
@JsonProperty("product_id")
private String productId;
@JsonProperty("source_address")
private String sourceAddress;
}