2010-01-08 5 views
1

Hibernate를 지속성 공급자로 사용하여 JBoss Seam 웹 응용 프로그램을 실행하고 있습니다. 배포 및 업데이트를 단순화하기 위해 OSGI 로의 마이그레이션을 고려 중입니다.OSGI - Hibernate + JBoss Seam

아직 OSGI에 대한 경험이 없으므로이 작업을 수행 할 수 있는지 제한이 있는지 알 수 없습니다.

예를 들어 엔티티 클래스를 변경하고 Hibernate에서 일부 테이블을 삭제하고 새로운 테이블을 만들길 원한다면 가능합니까? 최대 절전 모드에서 OSGI에 후크가 있어야 테이블 A를 삭제하고 테이블 B를 만들 수 있습니까?

월터

답변

0

귀하의 질문을 완전히 이해하고 있는지 잘 모르겠습니다. OSGi를 사용하여 애플리케이션을 모듈화하는 경우,이 선택은 Hibernate의 동작에 영향을주지 않습니다. 스키마를 관리하기 위해 번들을 활성화 할 때 Hibernate의 SchemaExport 또는 SchemaUpdate API를 호출 할 수 있지만 최대 절전 모드로는이 프로세스가 실행되지 않습니다. 너 혼자해야 해.

+0

좋아, 롭, 그게 합리적이라고 생각해. 그래서 엔터티 클래스를 업데이트 할 때마다 스키마 내보내기/업데이트를 호출해야합니까? 나는 내가 할 일은 엔티티 클래스를 추가하는 것이라고 생각한다. 테이블 구조를 업데이트하면 데이터를 자동으로 마이그레이션하는 것이 훨씬 어려워집니다. 데이터를 내 보낸 다음 새 스키마로 다시 삽입해야합니다. –

+0

예, Hibernate의 SchemaUpdate 도구는 매우 단순합니다. 존재하는 데이터를 보존하면서 사소한 스키마 변환을 수행해야하는 경우 좀 더 진보 된 것이 필요합니다. 우리 회사는 번들 정품 인증 중에 Hibernate의 스키마 도구를 호출하는 경우 새로운 Configuration 및 SessionFactory 객체를 만들어 변경 사항을 가져 오는 것을 잊지 마십시오. –

관련 문제