程序化事务管理通常是一个好主意,只有当你有一个小的 事务操作数。例如,如果您有一个 Web 应用程序 仅对某些更新操作需要事务,您可能不想设置 使用 Spring 或任何其他技术的事务代理。在这种情况下,使用 可能是一个好方法。能够设置交易名称 显式也是只能使用编程方法才能完成的事情 到事务管理。TransactionTemplate

另一方面,如果您的应用程序具有大量事务操作, 声明式事务管理通常是值得的。它保持交易 管理脱离业务逻辑,配置起来并不难。使用 Spring Framework,而不是 EJB CMT,声明式事务的配置成本 管理大大减少。