Jackson的注解使用

本文详细介绍了Jackson库中三个关键注解的使用:JsonAlias、@JsonProperty和@JsonSerialize。JsonAlias用于在反序列化时将不同名称的JSON字段映射到同一bean属性。@JsonProperty支持序列化和反序列化,并提供了Access级别控制。@JsonSerialize用于自定义序列化逻辑,以解决如将'1/0'转换为'男/女'等需求。
摘要由CSDN通过智能技术生成

1、JsonAlias

只在反序列化时起作用,string ->bean

接收多个json字段的名称:@JsonAlias({"name","user"})。但是如果多个json字段对应bean里面同一个属性,还是会解析报错。

可以加在字段、getter、setter方法上。

2、@JsonProperty

支持序列化和反序列化

Access.WRITE_ONLY:只在序列化时使用修改后的字段
Access.READ_ONLY:只在反序列化时使用,类似于@JsonAlias注解
Access.READ_WRITE:在序列化和反序列化都使用修改后字段
Access.AUTO:自动确定,一般是和第三个一样,啥情况不一样我也不清楚,如果不写access,默认就是这个。
value是逻辑属性的名称,如果只有value则省略

@JsonProperty(value = "name", access = JsonProperty.Access.WRITE_ONLY)

@JsonProperty("name")
public static void main (String[] args ) throws IOException {
        String a ="{\"NaMe\":\"hello\"}";
        ObjectMapper objectMapper = new ObjectMapper();
        Label label = objectMapper.readValue(a, Lab
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值