Bom Dia!
Pessoal, tenho uma função que ao realizar a leitura de um dado o java grava a data + hora atual da leitura no BD como String, porém o horário está sendo gravado 1 hora a menor devido ao horário de verão brasileiro que foi postergado para Novembro, ou seja, é 17h mas está gravando 18h, como resolver?
Formatando a String:
SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
Pegando a data e hora atual para gravar no BD:
String data = dateFormat.format(new Timestamp(System.currentTimeMillis()));
Voce falou uma coisa, depois outra.
No geral nao tem mistério, acerte o relógio. E o que foi gravado errado corrige direto no banco, faz um update recalculando a data/hora.
Veja se este post te ajuda
Temte salvar datas em UTC e ao apresentar vc converte para o locale corrente
dei uma resposta no tópico que criei quando passei por isso, da uma olhada na minha ultima msg, talvez te ajude, se a atualização do java não ajudar, é esse que o rpassos81 mandou, post
Boa tarde, obrigado a todos, resolvi alterando a configuração da hora do windows, desmarquei a opção “Ajustar automaticamente o relógio para o Horário de Verão”, funcionou.