ehcache-spring-annotations


Provides a simple model for integrating Ehcache in a Spring project via annotations.

Ehcache Annotations for Spring

A successor in spirit of the annotations provided by the Spring-Modules Cache library that allows declarative, aspect based caching to be added to a Spring Framework based application by simple annotation.

Ehcache Annotations for Spring is available via maven, simply add the following dependency to your pom.xml

<dependency> <groupId>com.googlecode.ehcache-spring-annotations</groupId> <artifactId>ehcache-spring-annotations</artifactId> <version>1.2.0</version> </dependency>

If you're new to EhCache please read their Getting Started with EhCache documentation before digging into this library. EhCache Spring Annotations is an addition to Spring & EhCache, it still requires you have a working knowledge of both technologies.

To get started, read the documentation on using @Cacheable and @TriggersRemove.

Also take a look at this Quick Start article by RafaƂ Borowiec.



1.2.0 Release - September 19, 2011

  • Issue 50: Add attribute to @Cacheable to prevent caching of null values
  • Issue 55: Add Self Refreshing Cache
  • Issue 57: Fix incompatibility with Google App Engine
  • Issue 60: Added interceptor API for Cacheable and TriggersRemove annotations
  • Issue 65: Switch Cacheable to use Ehcache.getWithLoader instead of just Ehcache.get
  • Issue 66: Replaced weak-valued concurrent map from Guice with MapMaker using Guava
  • Issue 70: Add max-wait option for using self populating cache to avoid hung threads
  • Issue 79: Fix NPE from missing chained exception when using selfPopulating cache
  • Issue 80: commons-codec is now an optional dependency
  • See the 1.2.0 Fixed Issues list for full release details

1.1.2 Release - July 6 2010

  • Issue 38: Fix dependency cycles between packages found by jDepend
  • Issue 39: Update 1.1 XSD to reference Spring 2.5 instead of 3.0 so things work correctly in Spring 2.5
  • See the full 1.1.2 Fixed Issues list for full release details

1.1.1 Release - June 30 2010

  • Issue 35: Add new @PartialCacheKey annotation that allows for only specific method arguments to be used for key generation
  • Issue 34: Allow for multiple caches to be specified in a @TriggersRemove annotation.
  • Some minor performance improvements around runtime annotation configuration lookup.
  • See the full 1.1.1 Fixed Issues list for full release details

1.1.0 Release - June 28, 2010

  • Add new @KeyGenerator annotation that allows key generation to be configured in the @Cacheable and @TriggersRemove annotation
  • Refactor key generation classes so that all key generators can take advantage of reflection and common code paths
  • Add a new ehcache:config element which can configure a background task to execute evictExpiredElements on caches.
  • Add ability to specify if the cache remove action from @TriggersRemove happens before or after the advised method executes.
  • Add OSGi support in the released JAR.
  • Fixed some bugs with the namespace handler that prevented property placeholders from working correctly.
  • See the full 1.1.0 Fixed Issues list for full release details

1.1.0-RC2 Release - June 18, 2010

  • Add ability to specify if the cache remove action from @TriggersRemove happens before or after the advised method executes.
  • Add OSGi support in the released JAR.
  • Fixed some bugs with the namespace handler that prevented property placeholders from working correctly.
  • See the full 1.1.0 Fixed Issues list for full release details

1.0.5 Release - May 28, 2010

1.1.0-RC1 Release - May 17, 2010

  • Add new @KeyGenerator annotation that allows key generation to be configured in the @Cacheable annotation
  • Refactor key generation classes so that all key generators can take advantage of reflection and common code paths
  • Add a new ehcache:config element which can configure a background task to execute evictExpiredElements on caches.
  • See the full 1.1.0 Fixed Issues list for full release details

1.0.4 Release - May 17, 2010

  • Use CacheManager.getEhcache instead of getCache to support decorated caches
  • Fix Spring API usage so that both Spring 2.5 and 3.0 are supported by a single library.
  • 1.0.4 Fixed Issues

1.0.3 Release - Apr 25, 2010

  • Fixes incorrect spring.schema file to point to the correct XSD.
  • Clean up JavaDocs.
  • The List returned by ListCacheKeyGenerator caches the calculated hashCode.
  • 1.0.3 Fixed Issues

1.0.2 Release - Apr 16, 2010

Fixes cross-JVM consistency issues when an Enum is a method argument. 1.0.2 Fixed Issues

1.0.1 Release - Apr 6, 2010

Our initial production-ready release is available as a download here and from the central maven repository. This release accomplishes our initial goals of providing an annotations based approach for applying caching to a Spring 3.x project.

Project Information

Labels:
Spring Ehcache Annotation Java