Es el resultado de inicializar BigDecimal
de double
:
System.out.println(String.format("%21.20f", new BigDecimal(0.493));
// Prints 0,49299999999999999378
Entonces, cuando BigDecimal
inicializado de esta manera se guarda en la base de datos, produce un valor inexacto, que se carga correctamente más tarde.
Si BigDecimal
se inicializa por cadena o si el valor se establece directamente en Java, todo funciona bien.