Nem
java.util.Date
nem Oracle Date
armazena informações de fuso horário. No seu caso, o driver Jdbc converte sua data usando o fuso horário da JVM. Você pode usar uma das seguintes opções:- Se você estiver usando PreparedStatement, você pode usar
setDate(int parameterIndex, Date x, Calendar cal)
método para especificarCalendar
no fuso horário UTC. - Para Spring
jdbcTemplate
em vez de inserirDate
objeto, insiraCalendar
comUTC
fuso horário TimeZone.setDefault(TimeZone.getTimeZone("GMT"))
pode ser definido em JVM lvl- Use
-Duser.timezone=GMT
na inicialização da JVM