(MongoDB) AbstractMongoListener Usage example(몽고리스너 사용법)
몽고리스너란, MongoDB 컬렉션에 변화가 발생할 경우 이러한 이벤트에 따라 사용자가 정의한 행위를 실행하는것을 도와주는 이벤트 리스너이다.
먼저, AbstractMongoListener 의 메소드를 설명하겠습니다.
void onAfterConvert(AfterConvertEvent<E> event)
void onAfterDelete(AfterDeleteEvent<E> event)
void onAfterLoad(AfterLoadEvent<E> event)
void onAfterSave(AfterSaveEvent<E> event)
void onApplicationEvent(MongoMappingEvent<E> event)
void onBeforeConvert(AfterConvertEvent<E> event)
void onSave(AfterSaveEvent<E> event)
예)
Onsave메소드를 오버라이에서 사용하는 방법을 알아보자
이 예시는 Example클래스에 이벤트가 발생했을 때, 일어나는 리스너 클래스이다.
Example 클래스에 save가 일어난 후 다음과 같이 특별ㅎ
class ExampleListener extends AbstracMongoListener<Example> {
@Override
public void onAfterSave(AfterSaveEvent<Example> event) {
Example ex = event.getSource();
//이 아래부터 개발자가 원하는 처리를 할 수 있다.
}
단, 주의 사항은
onAfterSave같은 경우는 MongoDB에 insert, insertList, save메소드가 발생했을 때만, 이 리스너 메소드가 호출된다. updateFirst, updateMulti, findAndModify가 발생했을 때는 이 메소드가 호출되지 않는다.
왜냐하면 저장하는 메소드는 애플리케이션단에서 이벤트가 발생한 직후 처리할 수 있는 이벤트적 성격을 가지고 있지만, 업데이트 같은경우는 DB단 안에서 처리되기 때문이다.
먼저, AbstractMongoListener 의 메소드를 설명하겠습니다.
void onAfterConvert(AfterConvertEvent<E> event)
void onAfterDelete(AfterDeleteEvent<E> event)
void onAfterLoad(AfterLoadEvent<E> event)
void onAfterSave(AfterSaveEvent<E> event)
void onApplicationEvent(MongoMappingEvent<E> event)
void onBeforeConvert(AfterConvertEvent<E> event)
void onSave(AfterSaveEvent<E> event)
예)
Onsave메소드를 오버라이에서 사용하는 방법을 알아보자
이 예시는 Example클래스에 이벤트가 발생했을 때, 일어나는 리스너 클래스이다.
Example 클래스에 save가 일어난 후 다음과 같이 특별ㅎ
class ExampleListener extends AbstracMongoListener<Example> {
@Override
public void onAfterSave(AfterSaveEvent<Example> event) {
Example ex = event.getSource();
//이 아래부터 개발자가 원하는 처리를 할 수 있다.
}
단, 주의 사항은
onAfterSave같은 경우는 MongoDB에 insert, insertList, save메소드가 발생했을 때만, 이 리스너 메소드가 호출된다. updateFirst, updateMulti, findAndModify가 발생했을 때는 이 메소드가 호출되지 않는다.
왜냐하면 저장하는 메소드는 애플리케이션단에서 이벤트가 발생한 직후 처리할 수 있는 이벤트적 성격을 가지고 있지만, 업데이트 같은경우는 DB단 안에서 처리되기 때문이다.
댓글
댓글 쓰기