@JsonSerialize(using = LongToStringUtil.class)注解的使用 您所在的位置:网站首页 class什么意思啊 @JsonSerialize(using = LongToStringUtil.class)注解的使用

@JsonSerialize(using = LongToStringUtil.class)注解的使用

2023-07-23 13:32| 来源: 网络整理| 查看: 265

一般我们在定义private Long id;时,会添加上@JsonSerialize(using = LongToStringUtil.class)这样类似的注解,接下来我们来看一下这个注解是什么意思?有什么作用?

1、使用注解如下所示:

@JsonSerialize(using = LongToStringUtil.class) private Long id;

@JsonSerialize在com.fasterxml.jackson.databind.annotation路径下,是fastjson包下的接口。

2、我们实体类中定义的Long类型的数据在和前端交互时,会比number数值更大,会导致精度缺失,使用JsonSerialize注解,可以帮助我们解决该问题。

3、在using  = LongToStringUtil.class,可以使用我们自定义的类,来将我们传入的值转换为String类型,来传入到前端,可以解决精度问题,定义的LongToStringUtil类需要继承自JsonSerializer类,代码如下所示:

//在实体类的long类型属性上加上注解:@JsonSerialize(using =LongToStringSerializer.class) //Long类型数据(eg:id)传到前台会超出JS精确整形范围,因此转化为String传到前台 public class LongToStringUtil extends JsonSerializer { @Override public void serialize(Long value, JsonGenerator gen, SerializerProvider serializers) throws IOException { if(null!=value) { gen.writeString(String.valueOf(value)); } } }

路漫漫其修远兮,吾将上下而求索,希望此篇文章能够对大家有所帮助.........



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有