Ambos BigDecimal
y Double
extender Number
, para que puedas hacer:
Number singleResult = ((Number) entityManager.createNativeQuery(sqlString).getSingleResult());
double resultAsDouble = singleResult.doubleValue();
BigDecimal resultAsBigDecimal = new BigDecimal(singleResult.toString());
Utilice resultAsDouble
si desea el tipo primitivo, pero no le importa conservar la precisión exacta, use resultAsBigDecimal
de lo contrario.