动态横切修改行为与反射访问连接点上下文
1. 简单缓存实现
在股票市场服务场景中,为给定股票生成指定天数的图表是一项开销较大的操作,因此可以采用缓存策略来优化性能。
首先,定义一个提供股票图表的服务类 StockService :
package ajia.stock;
import ajia.caching.Cachable;
public class StockService {
@Cachable(cacheStore="Chart")
public byte[] getQuoteGraph(String ticker) {
// Simulate creation of graph
return ticker.getBytes();
}
}
这里使用了 @Cachable 注解来标记可以缓存返回值的方法,该注解指定了 cacheStore 属性,它是缓存键的一部分。注解定义如下:
package ajia.caching;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@Retention(RetentionPolicy.RUNTIME)
public @interface Cachable {
String cacheStore
超级会员免费看
订阅专栏 解锁全文
43

被折叠的 条评论
为什么被折叠?



