@JsonIgnore与 @JsonProperty 、@JsonSetter用法

@JsonIgnore与 @JsonProperty 组合使用:

@JsonIgnore放在get方法上
@JsonProperty放在set方法上
这样可实现比如实体类的password属性,返给前端时被忽略,
而后端接收数据转换成java对象时,被正常赋给password

@JsonSetter 法:

前端传过来json转换为java对象时,
json的key与实体类的属性不一致,
比如下边代码 userId 与id 不一致,用@JsonSetter注解做转换

@JsonSetter("userId")
 public void settId(String id) {
        this.id = id;
    }

@JsonProperty 用法:

1.前端传过来的参数,想用其他属性名接收,可以在属性上加此注解
2.后端返回给前端数据时,前端要求指定key,可在属性上加此注解,就会以注解中的value返回
@JsonProperty是@JsonGetter与@JsonSetter的合体版

@JsonProperty("userId")
private Integer id;
@JsonIgnore@JsonProperty是两个常用的注解,用于在Java对象和JSON之间进行序列化和反序列化操作,缓存无直接关系。 @JsonIgnore注解通常用于在序列化过程中排除某些属性,即不将其包含在生成的JSON中。可以在类的属性上使用@JsonIgnore注解,或者使用在getter和setter方法上。这样,当将对象转换为JSON时,被@JsonIgnore注解标记的属性将被忽略。 @JsonProperty注解则用于指定属性在转换为JSON时的名称。可以在属性上使用@JsonProperty注解,并指定属性在JSON中的名称。这个注解通常@JsonIgnore一起使用,@JsonIgnore用于排除属性,而@JsonProperty用于指定排除属性的替代名称。 至于缓存的相关问题,可以使用Spring Framework提供的缓存注解,如@Cacheable和@CacheEvict。@Cacheable注解用于在方法上指定该方法的返回值应该被缓存起来,可以指定缓存的名称和缓存的key。而@CacheEvict注解则用于在方法执行后清空指定的缓存,可以指定要清空的缓存名称和缓存的key。 这两个注解的具体使用和原理需要根据具体的缓存框架来解释,比如使用Spring的缓存框架,可以结合使用@Cacheable和@CacheEvict来实现对缓存的管理和控制。<span class="em">1</span><span class="em">2</span> #### 引用[.reference_title] - *1* [类继承父类遇到和父类同名不同类型的属性可以用json注解转化@JsonProperty](https://blog.youkuaiyun.com/y666666y/article/details/108124448)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [springboot结合 @Cacheable和@CacheEvict拉起和清空缓存.zip](https://download.youkuaiyun.com/download/weixin_43812522/13125068)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值