Diferença entre datas

Algum motivo para estar reinventado a roda?
Seria para utilizar as classes do Java mesmo ou desconhece a API Joda Time como foi citada?

Muito simples de se trabalhar e faz exatamente o que você precisa.
Podes calcular para você diferença de meses, dias, horas, minutos, segundos…

Abraços.

Boa Menino Jesus!Não deixa o mané ai te zoar não!

Utilzar uma API externa nem sempre é a melhor solução. Pode até ser desconhecimento da API JodaTime, mas o cara que usa uma API dessa tem o desconhecimento da linguagem Java :). Usa uma API com 1000coisas e usar so 1 é desnecessário. basta fazer isso:

long dias = (dataMaior.getTime() - dataMenor.getTime()) / 1000 / 60 / 60 / 24;

Quem quer saber o q é os 1000, 60 e 24 é so rever a thread q o Paulo Silveira explica isso no começo.

Fala Pessoal, boa noite a todos,

Amigos utilizei a solução do amigo jimmyhc mas estou enfrentando um problema e espero que possam me ajudar, vejam o meu código:

[code]
String dtObito = request.getParameter(“dataobito”).toString();

SimpleDateFormat sdf = new SimpleDateFormat(“dd/mm/yyyy”);

try {
Date date2 = new Date();
System.out.println(date2);
Date date1 = (java.util.Date)sdf.parse(dtObito);
System.out.println(date1);
System.out.println(dtObito);

long differenceMilliSeconds = date2.getTime() - date1.getTime();
System.out.println("diferenca em milisegundos: " + differenceMilliSeconds);
System.out.println("diferenca em segundos: " + (differenceMilliSeconds/1000));
System.out.println("diferenca em minutos: " + (differenceMilliSeconds/1000/60));
System.out.println("diferenca em horas: " + (differenceMilliSeconds/1000/60/60));
System.out.println("diferenca em dias: " + (differenceMilliSeconds/(10006060*24)));
} catch (RuntimeException e) {
e.printStackTrace();
} [/code]

Esta é a minha saida:

[quote]
Fri Jun 15 17:45:37 BRT 2012
Tue Jan 10 00:06:00 BRST 2012
10/06/2012
diferenca em milisegundos: 13631977437
diferenca em segundos: 13631977
diferenca em minutos: 227199
diferenca em horas: 3786
diferenca em dias: 157[/quote]

Reparem que a data que informo no formulário anterior é “10/06/2012”, ou seja este é o valor do meu request.getParameter(“dataobito”)
Se mando pro console o conteúdo da variável vai certo (String)…
Se faço o cast muda para outra data (2ª linha da saída no console)

O que estou fazendo de errado? Alguma “luz”.

Até mais…