Campo data (Hibernate)

2 respostas
P

Pessoal,
Estou trabalhando com hibernate e com oracle. o Tipo DATE do oracle é date e time, mas só que no meu HQL eu preciso comparar um atributo desse tipo (DATE) , somente com um parametro data, e outro somente com parametro hora. Ou seja tem um DateTime no banco mas quero comparar somente com data ou somente com hora.

Alguém sabe como fazer ?
Obrigado.

phj

2 Respostas

J

Caro, precisei fazer isto uma vez, não encontrei nada pronto, criei dois metódos utilizando SimpleDateFormat e Calendar, onde eu fazia um parse para data ou hora, e também não deve comparar a data do seu banco com um atributo new Date(), pois nao vai funcionar, então crie um método utilizando Calendar ou SimpleDateFormat e que lhe retorne a data no formato dd/MM/yyyy.

R

Senhores,

Infelizmente a Hibernate não oferece métodos para manipular datas no HQL, no entanto, você pode utilizar as funções do banco, no seu caso o Oracle:

É possível fazê-lo no HQL, a desvantagem é que você terá que reescrever esta query se mudar de banco (ou buscá-la de um arquivo para que sua aplicação permaneça multi-banco).

Espero que seja de ajuda.

Criado 4 de setembro de 2004
Ultima resposta 12 de set. de 2004
Respostas 2
Participantes 3