И двете BigDecimal
и Double
разширение Number
, така че можете да направите:
Number singleResult = ((Number) entityManager.createNativeQuery(sqlString).getSingleResult());
double resultAsDouble = singleResult.doubleValue();
BigDecimal resultAsBigDecimal = new BigDecimal(singleResult.toString());
Използвайте resultAsDouble
ако искате примитивния тип, но не ви е грижа за запазването на точната точност, използвайте resultAsBigDecimal
в противен случай.