2017-02-07 6 views
1

나는 새로운 영구 유닛 이름을 지정해야하는 junit 테스트 클래스를 가지고 있는데, DB에 연결하는 속성과 함께 "B"라고 가정합니다. 이 테스트 클래스에서 나는 비지니스 로직 자바 클래스를 호출하는 JPA REST 서비스를 호출한다. 이 비지니스 로직 클래스에서 나는 persistent xml unit을 가진 entitymanager를 "A"라고 가정 해 보았습니다.다른 Java 클래스에서 사용되는 junit 클래스의 persistent xml 파일을 재정의하는 방법은 무엇입니까?

여기에서 질문은 비즈니스 클래스가 A 대신 영구 단위 B를 사용하도록 junit 테스트 클래스에서 영구 단위 B를 지정하는 방법은 무엇입니까?

+0

persistence-unit은 클래스가 아닌 persistence.xml 파일에 지정됩니다. 의미를 더 잘 정의하십시오 –

+0

다음과 같은 클래스에서 새 지속성 단위를 지정할 수 있습니다. http://stackoverflow.com/a/18733128 이 항목을 선택했으나 제대로 작동하지 않았습니다. 질문에서 무엇이 요구되는지 이해하십시오. – agrawalsp

+0

이것은 "새로운 지속성 단위"가 아닙니다. 이는 persistence.xml에 지정된 속성을 무시하는 몇 가지 추가 속성이있는 동일한 지속성 단위입니다. –

답변

0

당신은 오버라이드 (override) 할 수

SRC가/메인/자원/META-INF/persistence.xml을

SRC와 \ 테스트 \ 리소스 \ META-INF \ persistence.xml

+0

필자는 이것을 보았지만 문제는 내 junit 클래스가 src \ test \ resources \ META-INF \ persistence.xml 대신 src/main/resources/META-INF/persistence.xml을 사용한다는 것입니다. 이 경로 어딘가에. – agrawalsp

+0

JPA 단위 테스트에는 어떤 프레임 워크를 사용합니까? 유니폼 만? – jklee