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.
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.
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).