Criado_em, Atualizado_em – Timestamp com Hibernate
Posted in Hibernate, Java on April 25th, 2010 by Edipo L Federle – 1 CommentAntes de ler: http://en.wikipedia.org/wiki/Timestamp
Uma das coisas que eu sempre achei muito bacana no Rails é a parte do ActiveRecord,(active record pattern) uma característica que particularmente gosto é a criação automatica dos timestemp das tabelas no banco de dados, no Rails quando tempo um modelo(model) quase sempre temos um tabela relacionada a esse modelo no banco de dados, para título de curiosidade do pessoal do Java vou apresentar abaixo uma classe(model) que representa um produto.
OBS: essa linhda validates_presence_of: eu coloquei somente para não deixar a classe vazia, ela faz a validação do campo nome e descrição.
Simples não? Claro temos a migration para isso.
Ultimamente eu estou tendo um contado maior com Java e Hibernate, não vamos falar sobre Java vs Ruby aqui(ainda), então eu estava mapeando classes para o banco e me vi sem os timestamps, pensei, o hibernate é algo bacana provavelmente tenha algo parecido, uma olhada no google e na documentação e achei uma forma bem bacana e de certa forma elegante(não quanto o Ruby, xiita
) de se fazer tal funcionalidade.
Abaixo apresento uma classe Java Product que faz o uso do timestamp através de anotações do Hibernate.
Bom um tanto elegante também, mas … bom, tirei os gets e sets para deixar mais pequena, com essas anotações(@prePersist, @PreUpdate) iremos ter esses campos no banco igualmente temos no Rails, agora quando você persistir seu objeto ele ira gravar a data e a hora, e toda as vezes que você atualizar esse objeto no banco de dados ele irá atualizar a data e hora do campo updated, como na imagem a abaixo:
Bom pessoal esse post foi rápido e espero que tenha sido bom.
Até Logo.
