> For the complete documentation index, see [llms.txt](https://jack80342.gitbook.io/spring-boot/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://jack80342.gitbook.io/spring-boot/iv.-spring-boot-features/37.-distributed-transactions-with-jta/37.4-using-a-java-ee-managed-transaction-manager.md).

# 37.4 使用J2EE管理的事务管理器

如果你将Spring Boot应用打包为一个`war`或`ear`文件，并将它部署到一个J2EE的应用服务器中，那你就能使用应用服务器内建的事务管理器。Spring Boot将尝试通过查找常见的JNDI路径（`java:comp/UserTransaction`, `java:comp/TransactionManager`等）来自动配置一个事务管理器。如果使用应用服务器提供的事务服务，你通常需要确保所有的资源都被应用服务器管理，并通过JNDI暴露出去。Spring Boot通过查找JNDI路径（`java:/JmsXA`或`java:/XAConnectionFactory`），获取一个`ConnectionFactory`来自动配置JMS，并且你可以使用[`spring.datasource.jndi-name`属性](https://docs.spring.io/spring-boot/docs/2.0.0.RELEASE/reference/htmlsingle/#boot-features-connecting-to-a-jndi-datasource)配置你的`DataSource`。
