@PostLoad
@PrePersist
@PostPersist
@PreUpdate
@PostUpdate
@PreRemove
@PostRemove
@Entity
public class Human implements Serializable {
...
@Basic
@Column
private String hello;
...
public String getHello() {
return hello;
}
public void setHello(String hello) {
this.hello = hello;
}
...
@PrePersist
@PreUpdate
private void preModify () {
hello = hello.trim().toLowerCase();
}
...
}
Если в @Entity перед каким-либо полем установить аннотацию @Transient, то это поле не будет добавляться в хранилище при вызове em.persist(entity);
Бывает полезно если в entity есть какие то рабочие поля, которые не представляют ни какого поля в хранилище данных, но нужны для реализации бизнес логики приложения