Как создать индивидуальный первичный ключ в hyperjaxb3?
В настоящее время я использую hyperjaxb3 для создания классов Java из XSD, которые я использую для схемы БД. каждый раз, когда я генерирую Java-классы, он создает переменную с именем HJID, и этот HJID по умолчанию считается первичным ключом. я не хочу использовать этот HJID в качестве первичного ключа, поскольку я хочу создать свой собственный первичный ключ.
Может ли кто-нибудь сообщить мне об изменениях, которые мне нужно сделать в моем XSD, чтобы переопределить HJID?
1 ответ
Вы можете пометить существующее поле как ID, если это то, что вы хотите.
http://confluence.highsource.org/display/HJ3/Customization+Guide
<xs:complexType name="myType">
<xs:sequence>
<!-- ... -->
<xs:element name="id" type="xs:int" minOccurs="0">
<xs:annotation>
<xs:appinfo>
<hj:id>
<orm:column name="MY_ID"/>
<orm:generated-value strategy="SEQUENCE" generator="my-sequence"/>
<orm:sequence-generator name="my-sequence" sequence-name="MY_SEQ"/>
</hj:id>
</xs:appinfo>
</xs:annotation>
</xs:element>
<!-- ... -->
</xs:sequence>
</xs:complexType>
Отказ от ответственности: я автор.