spring_reference/IV. Spring Boot features/32.1. Using an Atomikos tra...

8 lines
1.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

### 32.1. 使用一个Atomikos事务管理器
Atomikos是一个非常流行的开源事务管理器它可以嵌入到你的Spring Boot应用中。你可以使用`spring-boot-starter-jta-atomikos`Starter POM去获取正确的Atomikos库。Spring Boot会自动配置Atomikos并将合适的depends-on应用到你的Spring Beans上确保它们以正确的顺序启动和关闭。
默认情况下Atomikos事务日志将被记录在应用home目录你的应用jar文件放置的目录下的transaction-logs文件夹中。你可以在application.properties文件中通过设置spring.jta.log-dir属性来自定义该目录。以spring.jta.开头的属性能用来自定义Atomikos的UserTransactionServiceIml实现。具体参考[AtomikosProperties javadoc](http://docs.spring.io/spring-boot/docs/1.2.2.BUILD-SNAPSHOT/api/org/springframework/boot/jta/atomikos/AtomikosProperties.html)。
**注**为了确保多个事务管理器能够安全地和相应的资源管理器配合每个Atomikos实例必须设置一个唯一的ID。默认情况下该ID是Atomikos实例运行的机器上的IP地址。为了确保生产环境中该ID的唯一性你需要为应用的每个实例设置不同的spring.jta.transaction-manager-id属性值。