我想在Spring Boot应用程序中将AxonServer用作EventStore,但是Axon自动配置使用JPA数据源(如果已定义)。我不知道如何强制Axon自动配置使用AxonServer而不是JPA?
更新:
在 Steven 的惊人建议下(非常感谢),我设法澄清了我想问的问题:
如果像下面的示例那样在Spring Boot应用程序配置中定义数据源和JPA条目,则将在数据库中创建表token_entry
,saga_entry
等。我想将AXON设置为不使用此数据源,并且不在其中创建任何表。
application.yml
spring:
datasource:
username: test
password: test
url: "jdbc:postgresql://localhost:5432/abc"
driver-class-name: org.postgresql.Driver
jpa:
database: POSTGRESQL
database-platform: org.hibernate.dialect.PostgreSQL9Dialect
hibernate:
ddl-auto: update
properties:
hibernate:
temp:
use_jdbc_metadata_defaults: false
答案 0 :(得分:2)
答案取决于您所使用的Axon Framework版本。 如果使用4.0及更高版本,则自动配置将在您的环境中查找Axon Server实例。因此,您根本不必强制执行。
但是,如果您使用的是3.3.x或3.4.x,则必须利用Axon Hub Client。更具体地说,应该包括axonhub-spring-boot-autoconfigure
依赖项。
但是,我建议升级到最新的Axon Framework 4版本,因为功能开发仅在此刻进行。