Json保留指定小数位数和处理末尾0

怼烎@ 2022-03-07 00:14 932阅读 0赞
  1. //修改JsonSerializer<Double> 到需要的类型,默认为JsonSerializer,参数为Object value
  2. public class JsonSerializerUtils extends JsonSerializer<Double> {
  3. @Override
  4. public void serialize(Double value, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {
  5. if (Objects.nonNull(value)) {
  6. //保留4位小数#代表末位是0舍去
  7. DecimalFormat decimalFormat = new DecimalFormat("0.####");
  8. //四舍五入
  9. decimalFormat.setRoundingMode(RoundingMode.HALF_UP);
  10. String result = decimalFormat.format(value);
  11. jsonGenerator.writeNumber(Double.valueOf(result));
  12. } else {
  13. jsonGenerator.writeNumber(Double.valueOf(0));
  14. }
  15. }
  16. }
  17. //用法实体类添加
  18. @JsonSerialize(using = JsonSerializerUtils.class)
  19. private Double hello;

发表评论

表情:
评论列表 (有 0 条评论,932人围观)

还没有评论,来说两句吧...

相关阅读