Webapp에 Spring + Hibernate를 사용합니다.
이 웹앱은 관련되지 않은 두 개의 프로덕션 사이트에 배포됩니다. 이 두 프로덕션 사이트는 Webapp을 사용하여 Person 데이터를 병렬로 생성하고 사용합니다.
내가해야 할 일은이 두 개의 관련없는 프로덕션 사이트에서 생성 된 Persons가 모두 별개의 PK를 가지고 있는지 확인하여 언제든지이 두 사이트의 Person 데이터를 병합 할 수 있도록하는 것입니다.
나에게 부과 된 추가 제약은 이러한 PK가 Long에 적합하므로 UUID를 사용할 수 없다는 것입니다.
내가하려는 것은 생성기로 시퀀스 S_PERSON을 가진 현재의 최대 절전 모드 매핑을 변경하는 것입니다.
<hibernate-mapping default-cascade="save-update" auto-import="false">
<class name="com.some.domain.Person" abstract="true">
<id name="id">
<column name="PERSON_ID"/>
<generator class="sequence">
<param name="sequence">S_PERSON</param>
</generator>
</id>
...
</hibernate-mapping>
PERSON_ID는 배포 사이트의 Spring 구성 파일에 따라 다른 시퀀스 (S_PERSON_1 및 S_PERSON_2)에서 생성 된 PK를 갖도록 구성 할 수 있습니다.
물론이야,
<generator class="sequence">
<param name="sequence">${sequenceName}</param>
</generator>
작동하지 않으므로 다른 것을 알아 내야합니다 ... 제 생성기가 시퀀스 또는 다른 시퀀스를 가리키는 구성 가능한 빈을 가리켜 야한다고 생각하지만 어떻게해야하는지 알 수 없습니다 ...
아이디어 나 해결 방법이 있습니까?