Problemas com Data!

2 respostas
leandrosu

Boa tarde pessoal,

Estou criando alguns relatorios ( JSP & SERVLET & MYSQL ), e estou com dificuldades ao fazer uma busca usando datas.

O problema é o seguinte, a data e gravada no banco da seguinte maneira:

- 1215191708861

Campo do mysql ( BigInt )

Nao tenho como mudar o formato da data inserida no banco pois o proprio sistema OPENFIRE faz isso .

Bom para imprimir essa data para o usuario faço o seguinte:
Calendar c = new GregorianCalendar();  
		  long data = Long.parseLong(startDate);  
		  c.setTimeInMillis(data);   
  
		  SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy 'as' HH:mm:ss");   
		  
		  String dataStr = sdf.format(c.getTime());
O problema esta na hora de tratar a data inserida pelo usuario:
Ex: usuario digita no campo: 07/07/2008 - ( dd-MM-yyyy )
Como posso comparar a data recebida pelo usuario com a data gravada no banco? Haveria algum jeito de formatar a data passada pelo usuario no formato da que esta no banco?

Valeu galera...
Abraço

2 Respostas

ChronoTrigger

Se a data passada for um objeto Date, é só usar:

data.getTime();

que retorna um long igual ao do banco de dados.

ivo_costa

Use o mesmo SipleDataFormat para passar a data do usuário (string) para date:

sdf.parse("coloque aqui o string em formato dd/MM/aaaa")

e depois faça um:

data.getTime();
Criado 8 de julho de 2008
Ultima resposta 8 de jul. de 2008
Respostas 2
Participantes 3