Validando hora

Estou tentando fazer o sistema retornar uma menssagem de bom dia, Boa tarde e boa noite mas este tipo de validacao que eu estou usando nao esta funcionando. Como fazer essa validação

if ((data.before(new Date(Date.parse(txtData.getText()+" 12:00:00 PM"))))&&(data.after(new Date(Date.parse(txtData.getText()+" 06:00:00 PM")))))
Mensagem.showMessageDialog(null,“Boa tarde “+usuNome,“Lion Informática”,JOptionPane.INFORMATION_MESSAGE);
else if ((data.before(new Date(Date.parse(txtData.getText()+” 06:00:00 AM”))))&&(data.after(new Date(Date.parse(txtData.getText()+" 12:00:00 PM")))))
Mensagem.showMessageDialog(null,"Bom dia "+usuNome,“Lion Informática”,JOptionPane.INFORMATION_MESSAGE);
else Mensagem.showMessageDialog(null,"Boa noite "+usuNome,“Lion Informática”,JOptionPane.INFORMATION_MESSAGE);

Obrigado

use Calendar.getInstance().get(Calendar.HOUR_OF_DAY) ou algo do tipo. :mrgreen:

http://java.sun.com/j2se/1.5.0/docs/api/java/util/Calendar.html
ou
http://www.javaalmanac.com/egs/java.util/GetCurTime.html