Diferencia entre dos fechas en Java - Código Fuente

Nos mostrará cual es la diferencia, en días, meses, años entre la fecha actual y una fecha que hayamos previamente almacenado.

Lo siguiente nos muestra la diferencia usando como parámetro el periodo del método Calendar para decirnos la diferencia con respecto a la fecha actual.

Licencia

/**
  * 
  * @param dia
  * @param mes
  * @param agno
  * @param periodo Usado en Calendar
  * @return int con la diferencia entre la fecha actual y la fecha proporcionada
  * @since 0.1.0
  * @see Calendar
*/
public static int PeriodoSQL(int dia, int mes, int agno, int periodo)
{
  int resultado = 0;
  mes --;
  Calendar b = Calendar.getInstance();
  int year = b.get(b.YEAR);
  int month = b.get(b.MONTH);
  int day = b.get(b.DATE);

  if (periodo == b.YEAR)
  {
    resultado = year-agno;
    if (mes > month)
      resultado--;
    if (mes == month)
      if (day < dia)
        resultado--;
  } //if


return resultado;

}

Al final retorna la diferencia del periodo solicitado.