anchor.diff:  	}
   ----
   
  -NOTE: You can either use the standard JSR-107 (JCache) annotations or Spring's own
  -caching annotations transparently. We strongly advise you however to not mix and match
  -them.
  +This example demonstrates the use of caching on a potentially costly operation. Before
  +invoking `computePiDecimal`, the abstraction will look for an entry in the `piDecimals`
  +cache matching the `i` argument. If an entry is found, the content in the cache is
  +immediately returned to the caller and the method is not invoked. Otherwise, the method is
  +invoked and the cache is updated before returning the value.
  +
  +NOTE: You can also use the standard JSR-107 (JCache) annotations (e.g. `@CacheResult`)
  +transparently. We strongly advise you however to not mix and match them.
   
   TIP: It is also possible to {spring-reference}/#cache-annotations-put[update] or
   {spring-reference}/#cache-annotations-evict[evict] data from the cache transparently.
  
positive.code: `org.springframework.cache.CacheManager` interfaces. Spring Boot auto-configures a
  suitable `CacheManager` according to the implementation as long as the caching support is
  enabled via the `@EnableCaching` annotation.
  
  NOTE: If you are using the cache infrastructure with beans that are not interface-based,
  make sure to enable the `proxyTargetClass` attribute of `@EnableCaching`.
  
negative.code: 
  [source,java,indent=0]
  ----
      import org.springframework.cache.annotation.Cacheable
  	import org.springframework.stereotype.Component;
  
  	@Component
  	public class MathService {
  
  		@Cacheable("piDecimals")
  		public int computePiDecimal(int i) {
  			// ...
  		}
  