Cache decorator which synchronizes its #put, #evict and #clear operations with Spring-managed transa
ctions (through Spring's TransactionSynchronizationManager, performing the actual cache put/evict/clear operation only in the after-commit phase of a successful transaction. If no transaction is active, #put, #evict and #clear operations will be performed immediately, as usual.
Use of more aggressive operations such as #putIfAbsent cannot be deferred to the after-commit phase of a running transaction. Use these with care. @author Juergen Hoeller @author Stephane Nicoll @author Stas Volsky @since 3.2 @see TransactionAwareCacheManagerProxy