물론입니다. 그냥 모든 영속 인스턴스에 대한 기본 클래스에이 코드를 추가하고 주석 처리 가능 :
@PrePersist
public void prePersist()
{
if (created == null)
{
created = updated = createCurrentTimestamp();
createdBy = updatedBy = CurrentUser.get();
}
}
@PreUpdate
public void preUpdate()
{
updated = createCurrentTimestamp();
updatedBy = CurrentUser.get();
}
public static java.sql.Timestamp createCurrentTimestamp()
{
final long now = System.currentTimeMillis();
final java.sql.Timestamp ts = new java.sql.Timestamp (now);
ts.setNanos(((int)(now % 1000)) * 1000000);
return ts;
}
CurrentUser
날 사용자가 시작 작업의 시작 부분에서 지정할 수있는 ThreadLocal<String>
이다. 이렇게하면 터치 된 모든 객체에 올바른 정보가 포함됩니다.
주석 처리가 없으면 HBM 파일에서 해당 옵션을 활성화하십시오.