我们正在使用Jackson从文件系统中读取json并将其解析为POJO。
POJO
String name;
Map<String,Object> map;
getters/setters
读
ObjectMapper mapper = new ObjectMapper();
mapper.enable(DeserializationFeature.USE_BIG_DECIMAL_FOR_FLOATS);
Pojo obj = mapper.readValue(jsonFile, Pojo.class);
问题
当我们在json(地图部分)中有数字时,它们会转换为 Integer 或 Double 。我们希望所有数字(小数和整数)都为Type BigDecimal 所以我尝试使用
mapper.enable(DeserializationFeature.USE_BIG_DECIMAL_FOR_FLOATS);
但这仅适用于十进制数字。没有可用于将整数转换为BigDecimal的功能。
问题
答案 0 :(得分:0)
尝试将:BigDecimal:[dps]
放在您的json中。例如:
{
"MY_BIG_D:BigDecimal:0" : 3
}
其中dps =小数位。