JAVA 金額自動除以100,精確到分


package net.crisps.cloud.order.commons.staff.util;

import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
import org.springframework.stereotype.Component;

import java.io.IOException;
import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.util.Objects;

1.編寫一個工具類繼承 JsonSerializer

@Component
public class MoneyUtils extends JsonSerializer<Long> {

@Override
public void serialize(Long aLong, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {
if (Objects.nonNull(aLong)) {
String format = getString(aLong);
jsonGenerator.writeString(format);
} else {//這個分支不要忘記了,否則將不輸出這個屬性的值
aLong = 0L;
String format = getString(aLong);
jsonGenerator.writeString(format);
}
}

private String getString(Long aLong) {
DecimalFormat df = new DecimalFormat("0.00");
return df.format(aLong.doubleValue() / 100);
}
}

2. 再返回的實體上加上注解

 

 

3. 然后看返回數據

 

 





免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM