나는 간단한 클라이언트 (JavaSE, 스윙) - 서버 (Java EE, EJB, JPA) 아키텍처를 가지고 있습니다.JPA 클라이언트 - 서버 복제/동기화 프레임 워크?
내 서버 측 엔티티에 대한 클라이언트 측 "캐시"를 만들고 싶습니다. 예를 들어, 엔티티를 다운로드하면 Embedded Derby DB (클라이언트 측 JPA 포함)에 저장하므로 다음 번에 필요할 때 클라이언트가 자체 DB에서 먼저 조회하고 거기에서 엔티티를 검색 할 수 있습니다 네트워크 통신을 절약 할 수 있습니다. (단순 복제)
내 문제는 엔티티의 ID로 시작됩니다. 클라이언트와 서버 측에서 동일한 ID를 사용하는 것이 실제로 좋지 않으므로 클라이언트 측 ID와 서버 측 ID에 대한 매핑을 저장해야합니다. 엔티티의 나는 많은 entites (15 ~ 20 ..)와 그 (것)들의 사이에서 협회가 있기 때문에 문제는 계속한다.
(병합 갱신) 서버 통신 향해 오른쪽 ID-S 배치 또는 클라이언트 측이 촉진으로 매핑 된 ID-S를 추적 유지 일부 재귀 어쩌면 반사 코드 엔진 갖도록 :
-
을 나는 클라이언트 측 엔티티를 수정하고,이 서버 측에서
- 의 (다양한 @OneToMany 외래 키에) 엔티티 세트에서 클라이언트 측 ID를 교체해야합니다 서버로 전송하기 전에, 서버에 병합 할 경우
- 문제는 VICA 반대입니다
누구나 JPA 사용자를위한 이러한 프레임 워크를 알고 있습니까? 또는 어쩌면 구현 팁이 있습니까? 는 // 나는 사전에 가능하면
감사합니다, 안드라스 리터
을, 응용 프로그램 지속성 수준에서이 문제를 해결하고자하는
팁 주셔서 감사합니다! 나는 많은 프레임 워크가 있는지 궁금해하며, 많은 중첩 된 엔티티에 대해 ID 처리 로직을 구현하는 것을 건너 뛸 수있다. –
최대 절전 모드 청취자는 모든 엔티티에서 작동했습니다. 엔티티가 데이터베이스에 저장되면 실행됩니다. 유일한 ID 논리는 클라이언트에서 서버로 동기화되었습니다. 당신은 아마 그것도 청취자를 쓸 수 있습니다. 그러면 모든 것이 2 개의 클래스에 포함됩니다. – Allan