Excluir Histórico do Banco de Dados de ANO em ANO

Olá pessoal,

Minha aplicação Java precisa realizar a seguinte operação:

  • Durante um ano de uso, o software precisa armazenar dados num histórico do Banco de Dados. No final deste período (1 ano), o histórico deverá ser apagado automaticamente, assim que o software for iniciado. Isso se realizará sucessivamente.

Tem alguma API específica que resolva este meu problema? Pensei em resolver com Calendar. Dá certo?
Outra coisa: se usar Calendar (ou GregorianCalendar), o melhor é colocar um if verificando se passou 1 ANO ou 365 dias da última operação? E se o ano for de 366 dias?

Alguém pode me ajudar?
Obrigado!

Você pode verificar se o dia e o mês são iguais (ignorando o ano) caso sejam apague o registro

Também poderia ser feito algo assim, excluir tudo com data anterior a atual trocando o ano pelo anterior:

[code]Calendar data = Calendar.getInstance();
data.set(Calendar.YEAR, data.get(Calendar.YEAR)-1);

PreparedStatement stmt = conexao.prepareStatement"delete from tabela where data <= ?");
stmt.SetDate(data);
stmt.execute();[/code]
Obs. supondo JDBC, senão é só adaptar para sua ferramenta ORM.

[quote=jamirdeajr]Também poderia ser feito algo assim, excluir tudo com data anterior a atual trocando o ano pelo anterior:

[code]Calendar data = Calendar.getInstance();
data.set(Calendar.YEAR, data.get(Calendar.YEAR)-1);

PreparedStatement stmt = conexao.prepareStatement"delete from tabela where data <= ?");
stmt.SetDate(data);
stmt.execute();[/code]
Obs. supondo JDBC, senão é só adaptar para sua ferramenta ORM. [/quote]

boa