当前位置: 首页 > 工具软件 > JsonSerialize > 使用案例 >

@JsonSerialize注解

滕夜洛
2023-12-01

@JsonSerialize
此注解用于属性或者getter方法上,用于在序列化时嵌入开发者自定义的代码。较常用的是对Double、Float类型进行保留小数操作、Date日期类型格式化

score分数保留两位有效数字

/**
 * @author chenyi
 * Create on 2019/9/10
 */
@Data
@ToString
public class Score {
    private Integer id;
    private String stuNo;
    @JsonSerialize(using = DecimalsKeepTwo.class)
    private Float score;//分数
}

自定义代码,对Float类型数据处理保留两位有效数字

/**
 * @author chenyi
 * Create on 2019/9/10
 */
public class DecimalsKeepTwo extends JsonSerializer<Float> {
    @Override
    public void serialize(Float aFloat, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {
        if (aFloat == null) {
            aFloat = Float.valueOf("0");
        }
        DecimalFormat format = new DecimalFormat("0.00");
        String formatResult = format.format(aFloat);
        jsonGenerator.writeString(formatResult);
    }
}
 类似资料: