이 항목에 대한 질문을 찾지 못했습니다. 나는 실제로 하나 이상의 데이터 소스를 사용하는 무언가를 다루지 못했습니다. 한 예는 두 개의 데이터 소스가 필요한 ETL입니다. 그러한 응용 프로그램은 어떻게 설계 될 수 있습니까?두 개 이상의 데이터 소스가있는 경우
3
A
답변
4
두 개의 데이터 원본, 두 개의 개별 이름. 각각의 빈 ID로 각각을 주입하십시오.
<bean id="fromDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${from.jdbc.driverClassName}"/>
<property name="url" value="${from.jdbc.url}"/>
<property name="username" value="${from.jdbc.username}"/>
<property name="password" value="${from.jdbc.password}"/>
</bean>
<context:property-placeholder location="from.jdbc.properties"/>
<bean id="toDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${to.jdbc.driverClassName}"/>
<property name="url" value="${to.jdbc.url}"/>
<property name="username" value="${to.jdbc.username}"/>
<property name="password" value="${to.jdbc.password}"/>
</bean>
<context:property-placeholder location="to.jdbc.properties"/>
하나의 DAO를 갖고 싶지만 두 개의 인스턴스가 필요합니다. 각 인스턴스에는 자체 데이터 소스가 있습니다. 하나는 소스에서 선택하고, 다른 하나는 목표로 INSERT합니다.
더 좋은 방법은 Spring을 피하고 데이터베이스에 내장 된 대량 전송 메커니즘을 사용하는 것입니다.
+0
감사합니다. 두 데이터 소스에 대해 어떻게 다른 연결 설정을 정의 할 수 있습니까? 나는 하나의 persistence.xml을 갖는 데 익숙하다. 또한 원본 데이터베이스와 대상 데이터베이스의 구조가 실질적으로 동일한 경우 다른 DAO 클래스를 정의 하시겠습니까? –
관련 문제
- 1. 두 개 이상의 데이터 소스가있는 동적 그리드
- 2. 두 개 이상의 테이블에 중복 ID가있는 경우
- 3. 두 개 이상의 양식이있는보기
- 4. 두 개 이상의 이름
- 5. 두 개 이상의 목록으로 평가하기
- 6. 어떻게 변수가 두 개 이상의
- 7. 두 개 이상의 tinymce 편집기
- 8. 두 개 이상의 자바 입력
- 9. 이전 함수이지만 이전에 두 개 이상의 행이있는 경우
- 10. 검색 결과가 두 개 이상의 단어로 표시되는 경우
- 11. 두 개 이상의 데이터 매퍼가 필요한 도메인 객체
- 12. 두 개 이상의 양식 필드 전달
- 13. 클래스를 두 개 이상의 대리자로 만드시겠습니까?
- 14. 두 개 이상의 값으로 일반 목록 정렬
- 15. MVC3는 일하지 않는 두 개 이상의 PC의
- 16. 두 개 이상의 폼 유효성 검사 문
- 17. 정규식은 두 개 이상의 공백과 일치합니다.
- 18. 두 개 이상의 파일에서 가져온 모듈 사용
- 19. StateListDrawable을 사용하는 두 개 이상의 상태
- 20. 두 개 이상의 ViewData.Model을 만들고 사용하는 방법
- 21. 웹 서버에서 두 개 이상의 파일 다운로드
- 22. 두 개 이상의 공백을 대체하십시오. & nbsp
- 23. php-mysql에서 두 개 이상의 테이블에 가입하기
- 24. 필드에 두 개 이상의 vType이 적용된 ExtJS
- 25. 는 두 개 이상의 노래가 여기에 함께
- 26. 두 개 이상의 행에있는 Jqgrid 헤더
- 27. 두 개 이상의 배열로 tableView 채우기
- 28. 동시에 두 개 이상의 메소드를 호출하거나 호출합니까?
- 29. 두 개 이상의 컬렉션을 바인딩하는 모델
- 30. XSLT에서 두 개 이상의 클래스를 사용하려고 시도합니다.
'@ EntityManager'를 사용하면 엔티티 관리자를 가질 데이터 소스를 지정할 수 있지만 여기에는 특정 질문이 없습니다. –
ETL의 경우 두 개의 데이터 소스가 동시에 필요합니다. 나는 이것을 발견했다. (http://forum.springsource.org/showthread.php?50123-JPA-with-multiple-persistence-units) 그것을 이해하려고 노력했다. Spring 설정에서 두 개의 서로 다른 EntityManager를 정의하는 방법을 볼 수 있지만 두 개의 영속 단위를 정의하는 것은 어떨까요? 또한 DAO가 소스 및 대상 데이터베이스에 대해 동일 할 것이라고 생각합니다. 동일한 클래스에서 자신의 EM을 사용하여 두 개의 DAO 인스턴스를 가질 수 있습니까? –