2010-06-30 2 views
1

조언을 구하는 중입니다. mysql db에서 특정 "삽입"을 모니터링해야합니다. 어떻게하면 더 편리할까요? 응용 프로그램은 Servlets과 MySQL을 사용합니다. 고맙습니다.모니터링 DB : MySQL

+0

지속성 프레임 워크를 사용하고 있습니까? 그렇지 않으면 삽입을 감지하기 위해 트리거를 사용할 수 있습니다. 그러나 프레임 워크를 사용하는 경우에는 무엇이든 사용할 것입니다. –

답변

2

사용중인 지속성 프레임 워크에 따라 다릅니다.

  • 최대 절전 모드 인 경우 Interceptor을 구현하고 onSave()에 연결해야합니다.
  • JPA 인 경우 @PrePersist 또는 @PostPersist 주석이있는 엔티티 메소드를 사용해야합니다.
  • 단순한 바닐라 JDBC라면 상용구가있는 DAO 메소드에 코드를 추가하십시오.

이것은 서블릿과 관련이 없습니다. 서블릿은 HTTP 요청을 가로 채기위한 API입니다. 데이터 액세스 계층은 독립적이고 투명해야합니다.

+0

답변 해 주셔서 감사합니다. 세부 정보를 추가해야합니다. WebApp는 JDBC를 사용합니다. DB MySql. 새 데이터를 전자 메일로 보내야만 사용자가 웹 응용 프로그램에서 볼 수 있도록 일부 새 데이터가 삽입 될 때 (타사 응용 프로그램에서 액세스 할 수없는 삽입) 알 수 있습니다. 그래서 ServletContextListener에 Thread를 정의했다. 주기적으로 DB에 변경 사항이 있는지 확인하고, 최신 데이터 (최대 타임 스탬프)를 추출하고, 임시 테이블 (마지막으로 읽은 데이터가 들어 있음)을 확인한다. 오래되었거나 새로운 것입니다. 감사합니다. – sangi

+0

@sangi - StackOverflow에서 귀하의 세부 사항을 귀하의 질문에 넣어하는 것이 좋습니다. 또한 문제를 해결 한 것처럼 들리므로 솔루션을 답으로 제공하면 도움이됩니다. 나는 당신이 새로운 것을 알고 있으므로 나는 그것을 지적 할 것이라고 생각했다. –