Oi William,
visto que seu sistema não vai usar a data inteira, mas sim apenas a hora, uma solução interessante seria, para armazenar a hora, não usar um campo do tipo data, mas sim integer.
Este integer iria de 0, que corresponderia ao momento 00:00:00 a 86399, que bateria com o momento 23:59:59
Assim, para comparar, basta que você converta a hora neste inteiro e use como consulta operadores to tipo between.
vlw kico mais eu acabei usando o time.java.sql e e a validacao consegui fazendo um withcriteria mais vlw!!!!