@Version no JPA

4 respostas
L

Boa tarde pessoal,

Necessito criar via JPA em minhas tabelas no banco de dados, um campo que quando o usuário alterar o registro, o JPA deverá registrar a data e hora da alteração.

 Li sobre o @Version, mas não sei se isso é apropriado para o que eu quero.   Algum colega poderia me ajudar nesta questão?

ABraços

4 Respostas

yorgan

Então, você quer armazenar apenas a data da última modificação em uma coluna ou quer manter um histórico de datas?
E pelo que entendi, o @Version não é bem o que você precisa.

[]'s
Daniel

L

yorgan:
Então, você quer armazenar apenas a data da última modificação em uma coluna ou quer manter um histórico de datas?
E pelo que entendi, o @Version não é bem o que você precisa.

[]'s
Daniel

Bom dia Daniel, muito obrigado por responder a minha questão.

Eu desejo é que toda vez que um usuário altere um determinado registro, o JPA grave em uma coluna a data e hora desta alteração, ou seja, desta forma em uma auditoria poderei ver a data em que este registro foi alterado entendeu?

 Aguardo sua resposta,

Abraços

yorgan

Você pode criar uma coluna e definir um valor default.

Algo +/- assim:

@Column(name="nomeColuna", columnDefinition="TIMESTAMP DEFAULT CURRENT_TIMESTAMP")
private Timestamp nomeColuna;

Dessa forma o JPA vai colocar o valor automaticamente.
Você só tem que adaptar o comando para o seu DB.

[]'s
Daniel

L

Certo Daniel, só que eu vi um exemplo assim na internet, e pelo jeito só inseriu na primeira vez, ou seja, a data foi inserida somente quando o registro foi criado, mas quando foi alterado a data e hora não foram atualizados.

Isso procede Daniel???

Criado 7 de setembro de 2011
Ultima resposta 8 de set. de 2011
Respostas 4
Participantes 2