2014-03-25 3 views
0

내 RAP 애플리케이션을 별도의 번들로 분할하려고합니다.메인 번들에서 하나의 연결을 사용하는 별도 번들의 JPA 엔티티

첫 번째 번들 - 기본 모듈입니다. 탐색 메뉴, 데이터베이스 연결 열기와 같은 일반적인 기능을 포함합니다. (데이터베이스 오라클)

다른 번들은 view, jpa-entities, business-logic을 포함하는 plugins 모듈입니다.

사용자 당 애플리케이션 당 하나의 데이터베이스 연결이 필요하지만 별도의 번들 및 기본 모듈에 jpa-entities가 필요합니다. 각 플러그인마다 데이터베이스 연결이 필요하지 않습니다.

모든 플러그인은 주 모듈 엔티티에서 작동 할 수 있습니다.

플러그인 만자가 플러그인 모듈 엔터티에서 작동 할 수 있습니다.

주 모듈은 플러그인의 엔티티에 대해 알지 못합니다.

가능합니까? 어떤 프레임 워크가 나를 도울 수 있습니까? 내 영어 :-)에 대한

죄송합니다

답변

1

별도의 번들의 엔티티 클래스를 가질 수 있지만 :

  • 는 모든 엔티티 클래스는
  • 나열되어 persistence.xml 파일이 있어야합니다
  • 엔티티 클래스 즉

을있는 패키지를 가져와야합니다 지속성 유닛이 들어있는 번들 : 당신의 엔티티 클래스를 가질 수 있습니다 별도의 모듈을 사용해야하지만 PU에 대한 모든 정보를 수집하는 주요 장소가 있어야합니다.

질문을 잘 이해하는 경우 PU가 포함되어 있지만 엔티티 클래스에 대해 알지 못하는 기본 모듈이 필요합니다. 죄송합니다. 불가능합니다.

대안 : 우리는 비슷한 요구 사항을 가지고

그래서 우리는 JPA를 떠나 Liquibase 및 QueryDSL 2 조합으로 전환하기로 결정했다. Liquibase는 데이터베이스 스키마를 정의하는 데 사용되고 QueryDSL은 데이터베이스 독립적 인 SQL 유형 안전성 문을 작성하는 데 사용됩니다. JPA 단어 사용 : 엔티티 클래스는 없지만 정적 메타 모델 만.

또한 이러한 기술을 지원하는 일부 모듈과 메이븐 플러그인을 개발했습니다. 아직 문서화되어 있지 않지만이 기술 스택에 관심이 있다면 더 자세한 정보를 제공 할 수 있습니다.

+0

확인. 고맙습니다. 나를 위해 일반 SQL을 사용하기가 더 쉬울 수도 ... – user3458388

관련 문제