https://s3-us-west-2.amazonaws.com/secure.notion-static.com/d1c1456a-8834-4167-8e5e-60337bb7c166/
spring 의 data-jpa 사용시 데이터 변경시 알림을 받는 방법이 있다.
EntityListener 클래스를 만들고
public class DataDtoListener {
@PostLoad
public void postLoad(DataDto dto) {
log.info("post load: {}", dto);
}
@PrePersist
public void prePersist(DataDto dto) {
log.info("pre persist: {}", dto);
}
@PostPersist
public void postPersist(DataDto dto) {
log.info("post persist: {}", dto);
}
@PreUpdate
public void preUpdate(DataDto dto) {
log.info("pre update: {}", dto);
}
@PostUpdate
public void postUpdate(DataDto dto) {
log.info("post update: {}", dto);
}
@PreRemove
public void preRemove(DataDto dto) {
log.info("pre remove: {}", dto);
}
@PostRemove
public void postRemove(DataDto dto) {
log.info("post remove: {}", dto);
}
}
@Entity 클래스에 @EntityListeners를 등록 하는 것이다.
@EntityListeners(DataDtoListener.class)
@Entitty
@Table(name="table_name")
public class DataDto() {
@Id
private long id;
...
}
EntityListener 클래스에 적용한 이벤트는 다음 시점에 호출된다.