Programmatic transactions give precise control on the boundaries of the transaction. Declarative transactions
- are defined using annotations
- less intrusive and are defined in Configuration file
- based on AOP concepts. This gives advantage of keeping the cross cutting concerns like transactions out of our DAO layer code.