- PersonService.java has different methods defined with propagations levels as NEVER, NOT_SUPPORTED, SUPPORTED, MANDATORY, REQUIRED, REQUIRES_NEW and NESTED.
- PersonService.java has one non-transactional method 'callTransactionalMethodsWithoutTrasaction()' calling all propagation methods to test the behavior when transaction is not present.
- PersonService.java has one transactional method 'callTransactionalMethodsWithTrasaction()' calling all propagation methods to test behavior when transaction is present.
- Import project as Maven project
- Run application as Spring Boot Application
- SpringTransactionPropagationExamplesApplication.java gets the PersonService bean and calls callTransactionalMethodsWithoutTrasaction() and callTransactionalMethodsWithTrasaction()
- Observe log and relate it with PersonService logging statements.