2.31.3. 使用方法
当您需要使用路由器中的 transacted()
EIP 时,应该添加此扩展。它利用 Quarkus 中的 narayana-jta 扩展提供的事务功能。
有关事务支持的详情,请参阅 Quarkus 事务指南。对于简单用法:
from("direct:transaction") .transacted() .to("sql:INSERT INTO A TABLE ...?dataSource=ds1") .to("sql:INSERT INTO A TABLE ...?dataSource=ds2") .log("all data are in the ds1 and ds2")
为各种事务策略提供支持。
策略 | 描述 |
---|---|
| 支持当前的事务;如果不存在当前事务,则抛出异常。 |
| 不支持当前的事务 ; 如果当前事务存在,则抛出异常。 |
| 不支持当前的事务,而总是以非事务方式执行。 |
| 支持当前的事务 ; 如果不存在,创建一个新事务。 |
| 创建一个新事务,挂起当前事务(如果存在)。 |
| 支持当前的事务 ; 如果不存在,以非交易方式执行。 |