Декларативное (на основе аннотаций) решение для кэширования для Java

Помимо Spring 3.1 и ehcache-spring-annotations, есть ли у нас другие альтернативы, кроме EhCache и Spring? ?


person Lee Chee Kiam    schedule 18.08.2011    source источник


Ответы (1)


Вы смотрели решения на основе Spring-AOP? Вы можете создать объект автопрокси в вашем Spring applicationContext, используя org.springframework.aop.support.RegexpMethodPointcutAdvisor, а затем создать объект, реализующий AfterReturningAdvice, ThrowsAdvice и >MethodBeforeAdvice.

Используйте этот объект для мониторинга вызовов и выходов функций и кэширования необходимой информации.

<bean name="cacheHandler" class="org.yourname.CachingInterceptor" />
<bean id="cacheAdvisor" class="org.springframework.aop.support.RegexpMethodPointcutAdvisor">
  <property name="advice" ref="cacheHandler" />
  <property name="pattern" value="org.yourname.regex.of.stuff.you.want.cached.*" />
</bean>
<bean class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator" />
person djsumdog    schedule 18.08.2011