Supponiamo di avere i 2 casi:
CASO 1. La tua variabile annoMovimento vale 2012 per cui l'errore sta nel fatto che con l'insert ti ostini a voler salvare sul DB l'anno a due sole cifre. Fai semplicemente
// Calendar per creare la data
Calendar dateCalendar = new GregorianCalendar();
dateCalendar.set(Calendar.DAY_OF_MONTH, giornoMovimento);
dateCalendar.set(Calendar.MONTH, meseMovimento);
dateCalendar.set(Calendar.YEAR, annoMovimento);
........
ps.setDate(3, java.sql.Date(dataCalendar.getTime());
memorizzando l'anno 2012 a 4 cifre
CASO 2. La tua variabile annoMovimento vale 12. In tal caso trovi un modo per farlo diventare 2012. Ad esempio (poichè dovrebbe trattarsi di un int) gli sommi 2000. Se ci dovessero essere anni precedenti al 2000 inventati qualche controllo che possa far diventare l'anno 19xx (v. di seguito). Dopodichè ti sei riportato al caso 1.
In questo modo sul DB la data sarà sempre corretta e poi con le successive select filtrerai come serve a te. Se dovessi avere problemi a fare una select con le date aventi l'anno a due sole cifre poichè sul DB sono memorizzate a 4 allora ti do il seguente consiglio cha comunque è valido in generale.
Crea una classe DBUtils con un metodo statico del tipo
public static int function getAnnoCompleto (int anno) { //dove anno è l'anno a 2 cifre)
int retVal;
Calendar currDate = new GregorianCalendar();
int currAnno = currDate.get(Calendar.YEAR);
if (anno >= 0 || anno <= currAnno ) {
//non credo avrai movimenti con anni precedenti al 1912
retVal = anno + 2000;
} else {
retVal = anno + 1900;
}
return retVal;
}
In questo modo nella select se hai l'anno a 2 cifre lo converti a 4 facendo semplicemente
DBUtils.getAnnoCompleto(anno)
sia per l'insert che per la select sia per tutti gli altri casi che si possono presentare
Inoltre in questa classe ci potrai mettere tutti i metodi che di volta in volta ti potranno servire per operare sul DB. Questa sarà una classe che ti potrà sempre tornare utile nel tuo lavoro ogni qualvolta dovrai fare operazioni o conversioni particolari sui DB.