Pessoal, alguém consegue me explicar o que está acontecendo? Devido a um erro numa aplicação minha fiz um teste que verifica se vários Timestamps (obtidos de várias datas) são instanciados corretamente, para a minha surpresa, apesar de forçar a hora para ser 00:00:00, em algumas datas a hora é modificada. Meu código é:
import java.sql.Timestamp;
import java.util.Calendar;
public class TimestampTest1 {
public static void main(String[] args) {
Calendar cal = Calendar.getInstance();
cal.clear();
cal.set(1999,Calendar.OCTOBER,3,0,0,0);
Timestamp ts1 = new Timestamp(cal.getTimeInMillis());
System.out.println(ts1.toString()); // 1999-10-03 01:00:00.0 ???????
cal.clear();
cal.set(1914,Calendar.JANUARY,1,0,0,0);
Timestamp ts2 = new Timestamp(cal.getTimeInMillis());
System.out.println(ts2.toString()); // 1914-01-01 00:06:28.0 ?????????
}
}
Obrigado