두 개의 별도 db 스키마 (Oracle의 전문 용어로는 2 명의 사용자 테이블) - schemaA와 schemaB가 있습니다.Hibernate : 하나의 객체를 초기화하는 두 개의 데이터 소스
schemaA, 다른 테이블들,이 테이블 :
domain(id NUMBER PK, description(VARCHAR2(10))
schemaB는이 테이블 :
q_user(id NUMBER PK, username VARCHAR2(8) NOT NULL, domain_id NUMBER, CONSTRAINT foreign key references schemaA.domain(id))
자바 클래스 QUSER에는 다음과 같은 속성이 있습니다 Long id, String username, Domain domain
질문 : 구성이 가능합니까? 두 개의 다른 데이터 소스 (schemaA와 schemaB)를 사용하여 QUERZ 객체를 초기화하려면 최대 절전 모드로 전환 하시겠습니까? 그렇다면 어떻게해야합니까?
또한 Spring 3, Hibernate 3.6 및 Oracle 10g를 사용하고 있습니다.
여러 데이터 소스를 정의하고이를 동적으로 바꾸기 위해 Spring 기술을 사용했지만,이 기능을 사용하여 단일 객체를 초기화 할 수 있는지 확신 할 수 없습니다.
도움을 주시면 감사하겠습니다. 감사합니다.
감사! 이것은 좋은 것처럼 보이지만 질문을 깨끗하게 유지하기 위해 도메인과 사용자의 관계를 1에서 1로 유지했지만 실제 생활에서는 다 대다가 있습니다. 따라서 중간에 user_domain (user_id NUMBER, domain_id NUMBER)이 교차 테이블이 있습니다. 도메인 모델 클래스에 스키마 (또는 카탈로그)를 추가하려고 할 때 - 그러한 테이블 또는 뷰 오류가 없습니다. 생성 된 sql을 보면 "... from Domain ..."(schemaA.Domain이어야 함)의 도메인에 스키마가 적용되지 않습니다. 이 다 대다 관계는 다른 경우라고 생각합니다. 제발 저를 올바른 방향으로 안내해 주시겠습니까? 많은 감사합니다 –
@ damo_inc 당신은 XML이나 주석을 사용하고 있습니까? 다시 점검했고 XML에도 스키마 속성이 있습니다. –
특수 효과를 사용하고 있습니다. 다른 스키마의 테이블에 동의어를 작성하여 문제를 해결했습니다. 다행스럽게도 저는 두 스키마 모두에 대한 완전한 sys 액세스 권한을 가지고 있습니다. :) 당신의 도움에 많은 감사드립니다. –