Programmatic Transaction Model应用的场景有:
1. 客户端bean发起一个事务,并把事务传播到调用的EJB中去,这些EJB用Declarative Transaction. 该方法解决了transation context不能在编程事务管理bean中传播的问题
2. 考虑到性能问题,有时我们只需要在关键的Case中需要用到事务,比如转账。其他周边Case不进行事务控制。这是可以考虑用编程事务。有时也称为Localized JTA Transations。声明式的事务可能没有编程式的灵活。个人理解,瞎猜的,没有用过。
3. 长事务, 放在一个stateful sessionBean中。虽然是一种Poor Design, 但还只有编程事务好处理。因为声明事务不好去划分事务的边界(propagation 和 isolation level). 个人理解,瞎猜的,没有用过。
本文探讨了ProgrammaticTransactionModel在不同场景下的应用,包括解决事务上下文传播问题、实现高性能关键业务流程中的事务控制及处理长事务等。通过对比声明式事务,编程式事务在某些情况下展现出更高的灵活性。
1826

被折叠的 条评论
为什么被折叠?



