2009-10-28 3 views
2

Hibernate 또는 다른 주류 O/R 매핑 프레임 워크의 도메인 객체 변경 사항을 구독 할 수있는 솔루션이 있습니까? 예를 들어 "Apple"이라는 데이터베이스에 테이블이있는 경우 "Apple 개체가 변경 될 때 알림"또는 "Apple 개체의 색"필드가 변경된 경우 "알림"이라고 말하고 싶습니다. 물론 변경된 객체의 ID 또는 변경된 객체의 목록 인 "무언가가 변경된"알림뿐만 아니라 id의 목록도 기대합니다. 확장 성이 좋은 그런 솔루션이 될 것입니다.도메인 객체 변경 알림 (Hibernate/Java)

요약 할 요구 사항 : DB에

  1. 모든 변화는 그것이 질문에 대한 구독 "같은 식을 사용하여 구독을 배치 할 수있어 완벽한 솔루션해야 ORM
  2. 을 통해 이동합니다 q 여기서 q.title은 '% hibernate %'와 같습니다. ""질문 "은 엔티티 (데이터베이스의 테이블에 매핑 된 Java 객체)입니다. 업데이트에 관심이 있습니다. 문자열 쿼리 일 필요는 없지만 요청을하는 일반적인 방법이 있어야합니다.

답변

3

이러한 알림을 생성하는 모든 변경 사항이 ORM을 통과합니까? 아니면 JDBC 또는 동일한 데이터베이스에 액세스하는 다른 응용 프로그램을 통해 데이터가 변경 될 수 있습니까?

모든 변경 사항이 ORM을 거쳐서 최대 절전 모드를 사용하고 있다면 최대 절전 모드의 interceptors and events을 사용할 수 있습니다.

반면에 데이터에 대한 모든 변경 사항이 ORM을 통과하지 않고 알림을 처리하는 코드가 매우 간단하면 데이터베이스 트리거가 더 나은 방법 일 수 있습니다.

+0

안녕하세요. Hibernate 인터셉터와 이벤트는 내 솔루션을 구현하는 데 도움이 될 수 있지만, 무언가를 완벽하게 사용할 준비가되어 있습니다. pls 업데이트 된 질문을 참조하십시오. 감사. – Vladimir