# Transactions with MariaDB Connector/R2DBC (Native API)

Java developers can use MariaDB Connector/R2DBC to connect to MariaDB database products using the Reactive Relational Database Connectivity (R2DBC) API. R2DBC operations are non-blocking, which makes R2DBC more scalable than Java's standard JDBC API.

## Transactions

By default, MariaDB Connector/R2DBC enables the auto-committing of transactions on all connections. When you issue a statement that modifies the table through the Connector, it automatically commits the transaction, making the change permanent on the database.

The native implementation of MariaDB Connector/R2DBC does not provide out-of-the-box support for reactive streams transactions unless user-managed transactions are subscribed to using Mono.from(Connection.beginTransaction()).block(), Mono.from(Connection.commitTransaction()).block(), and Mono.from(Connection.rollbackTransaction()).block() method calls.

To use Spring framework-managed reactive streams transactions from your Java code, use [MariaDB Connector/R2DBC with Spring Data R2DBC](/docs/connectors/mariadb-connector-r2dbc/using-the-spring-data-framework-with-mariadb-connector-r2dbc/transactions-with-mariadb-connector-r2dbc-spring-data.md).

<sub>*This page is: Copyright © 2025 MariaDB. All rights reserved.*</sub>

{% @marketo/form formId="4316" %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://mariadb.com/docs/connectors/mariadb-connector-r2dbc/using-the-native-r2dbc-api-of-mariadb-connector-r2dbc/transactions-with-mariadb-connector-r2dbc-native-api.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
