Package org.axonframework.modelling.saga.repository.jdbc


@NullMarked package org.axonframework.modelling.saga.repository.jdbc
A JDBC-backed SagaStore, together with the SQL dialects it can speak.

SagaSqlSchema supplies the statements and SagaSchema the table and column names, so both the dialect and the naming can be swapped without touching the store. Implementations are provided for generic databases, HSQLDB, PostgreSQL and Oracle 11.

The table and column layout is that of Axon Framework 4, so an existing saga table can be read and updated without migration, provided its saga type column holds saga class names. See JdbcSagaStore for when it might not.

These types carry the Axon Framework 4 API, to ease migration of projects that cannot move off it in one go. The departures are those Axon Framework 5 forced by removing the Serializer: JdbcSagaStore.Builder#serializer became converter, JdbcSagaStore#setSerializer is gone, SagaSqlSchema.readSerializedSaga(java.sql.ResultSet) returns the raw bytes rather than a serialized object, and sql_updateSaga no longer takes a revision. Gone with them is JdbcSagaStore.Builder#dataSource, which built a connection provider that is not bound to the ambient transaction; supply a ConnectionProvider instead.