Cast Query.uniqueResult() to Integer

7 respostas
G

Existe alguma restrição quanto a conversão de um Query.uniqueResult() do Hibernate para um Integer?

Sempre que tento fazer isso mesmo o resultado sendo um Inteiro recebo um BigDecimal cast exception.

A única maneira de contornar isso foi convertendo o Query.uniqueResult() para BigDecimal.

Gostaria de saber porque isso acontece.

7 Respostas

fiaux

Depende da query. Você precisa saber o que vai ser retornado para dar o cast correto.

G

O valor que está no banco é um inteiro.

Agora o que quero saber é se a Query do HIBERNATE, fazendo um Query > createSQLQuery > uniqueResult()

Tem alguma restrição de formato, porque só consigo fazer um cast em um BigDecimal ou recebo uma bela de uma BigDecimal cast exception.

fiaux

Qual o tipo do campo no banco?

G

No Oracle: Number de 8

Na Classe: int

davidpaniz

Posta também o mapeamento desse atributo por favor.

hiroc

Long valor = (Long.valueOf(query.uniqueResult().toString()));

java.rco

É preciso saber como está o mapeamento, e se você está usando Criteria, HQL ou SQLQuery.

Criado 8 de maio de 2008
Ultima resposta 27 de jun. de 2008
Respostas 7
Participantes 5