@JsonSerialize的使用

@JsonSerialize前端与后端交互时数据处理

在程序的开发过程中会经常需要后端将数据处理之后返回至前端,在之前会使用枚举类,通过if-else 判断 这种方法进行操作,这个提到的@JsonSerialize这个注解可以更优雅对此类型进行处理。下来介绍下该方法的使用

//创建一个类继承JsonSerializer
//这里的String类型为泛型 根据你处理数据的类型进行修改
public class TestUtil extends JsonSerializer<String>{
    /**
     * 
     * @param s 对应字段的内容
     * @param gen 需要将处理完毕之后的数据写入其中,如果未写则报错
     * @param provider 提供序列化
     */
     //这个方法实现的功能为将传入的数据根据需求进行调整
    @Override
    public void serialize(String s, JsonGenerator gen, SerializerProvider provider) throws IOException, JsonProcessingException {
        //在这里对数据进行处理
       if(s..equals("修改")){
       gen.writeString("处理完毕。");
	}else{
	gen.writeString("未找到对应类型");
	}
}
@Data
public class User{
 
    @Id
    private Long id;
 
    private String name;
 
    private String username;
    //这样就处理成功了
 	@JsonSerialize(using = TestUtil.class)
   private String remark;
}

@JsonSerialize的使用过程中重要的问题是在于 无论如何对数据进行处理 必须要向gen中写入数据要不然就会报错

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值