Abstract
Much of the work surrounding the design and development of enterprise applications involves decisions about how to coordinate the flow of persistent data. This includes when and where to cache data, when to apply it to a persistent store (typically the database), how to resolve simultaneous attempts to access the same data, and how to resolve errors that might occur when an action occurs that violates a constraint in the database. A reliable database is capable of handling these issues at a low level—in the database tier—but these same issues can exist in the middle (application server) and client tiers as well, and typically require special application logic. For example, a database provides built-in concurrency control through pessimistic locking support, whereas an application may choose to use an optimistic locking strategy to achieve a result more optimized for performance.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 2018 Jonathan Wetherbee, Massimo Nardone, Chirag Rathod, and Raghu Kodali
About this chapter
Cite this chapter
Wetherbee, J., Nardone, M., Rathod, C., Kodali, R. (2018). Transaction Management. In: Beginning EJB in Java EE 8. Apress, Berkeley, CA. https://doi.org/10.1007/978-1-4842-3573-7_8
Download citation
DOI: https://doi.org/10.1007/978-1-4842-3573-7_8
Published:
Publisher Name: Apress, Berkeley, CA
Print ISBN: 978-1-4842-3572-0
Online ISBN: 978-1-4842-3573-7
eBook Packages: Professional and Applied ComputingApress Access BooksProfessional and Applied Computing (R0)