Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Gravar data atual no Oracle utilizando JPA

Boa tarde,

Gostaria de saber como faço para gravar a data atual em um banco de dados Oracle utilizando Oracle,

Campo alterado deve ficar da seguinte forma:

Alterado / 16-DEC-15

2 respostas
solução!

Olá Renato! Para gravar uma Data com JPA está data deve ser do tipo java.sql.Date.

Uma alternativa é você criar um conversor e atribuir a JPA a utilizar esse conversor para gravar corretamente o formato.

Veja o meu Exemplo:

Minha Classe possui a seguinte variável de instancia e através da Anotação @Convert da JPA eu indico a Classe que será o conversor.

@Convert(converter = ConversorDeData.class)
 private LocalDate dataInicio;

Então eu criei essa classe ConversorDeData colocando a anotação @Converter para indicar que ela é o conversor, e o atributo autoApply para que o valor seja automaticamente convertido.

@Converter(autoApply = true)
public class ConversorDeData implements AttributeConverter<LocalDate, Date>{

    @Override
    public Date convertToDatabaseColumn(LocalDate localDate) {
        return Date.valueOf(localDate);
    }

    @Override
    public LocalDate convertToEntityAttribute(Date dbData) {
        return dbData.toLocalDate();
    }

}

No meu caso estou convertendo de LocalDate para Date e vice versa.

Espero ter ajudado! Bons Estudos!

Olá Romário,

Obrigado pelo feedback e desculpa pela demora em responder. Utilizei a classe que voce criou e ficou muito bom. Obrigado !