java - Axon - MySql 的 JPA 事件存储
问题描述
我正在尝试使用 JPA Event Store 和 mysql 数据库来实现 Axon 应用程序。Hibernate 会自动生成所有表,到目前为止它工作正常。
我的问题是 - 我可以用 hibernate_sequence mysql 表替换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>
解决方案
您可以通过代码进行此调整,这是真的。orm.xml
然而,在您的项目中指定一个文件更为直接,该文件对于某些表(domain_event_entry
我假设您的场景中的表)可以调整某些列。在那里,您应该能够将序列生成器调整为您想要的。
希望这可以帮助!
推荐阅读
- swift - 本地保存数据(IOS)
- r - gt table - 单元格中的换行符
- reactjs - 在表单提交时导航到另一个组件并将数据传递给导航组件反应 Js
- r - 使用 ini -fle 连接 R 与 odbc
- html - 顶栏和标题的CSS覆盖问题
- java - Spring Boot 看不到我的 Mapstruct 映射器
- mongodb - $group阶段多个字段的mongodb排序结果
- javascript - 保存从 Promise 返回的数据并将其传递给反应中的另一个组件
- python - 来自函数的 mongoengine 中的计算字段
- html - 我有一个问题,我的图像不会显示