Я пытаюсь реализовать приложение Axon с использованием хранилища событий JPA и базы данных mysql. Hibernate автоматически генерирует все таблицы и пока работает нормально.
Мой вопрос: могу ли я заменить таблицу mysql hibernate_sequence на AUTO_INCREMENT
столбцы в Mysql. Думаю, для этого мне нужно будет изменить исходный код Axon, так как я не могу найти другой настраиваемый способ изменить аннотацию @Id
для события домена @Entity
или других прав?
ОБНОВЛЕНИЕ
Хорошо, мне удалось это сделать, поместив новый файл в src\main\resources\META-INF\orm.xml
со следующим кодом:
<?xml version="1.0" encoding="UTF-8" ?>
<entity-mappings xmlns="http://java.sun.com/xml/ns/persistence/orm"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence/orm http://java.sun.com/xml/ns/persistence/orm_2_0.xsd"
version="2.0">
<mapped-superclass class="org.axonframework.eventhandling.AbstractSequencedDomainEventEntry" access="FIELD">
<attributes>
<id name="globalIndex">
<generated-value strategy="IDENTITY"/>
</id>
</attributes>
</mapped-superclass>
<entity class="org.axonframework.modelling.saga.repository.jpa.AssociationValueEntry" access="FIELD">
<attributes>
<id name="id">
<generated-value strategy="IDENTITY"/>
</id>
</attributes>
</entity>
</entity-mappings>