weathercacheinterceptor.java

来自「Spring + DWR2 实现的Sina天气抓取」· Java 代码 · 共 29 行

JAVA
29
字号
package org.signalon.weather.cache;

import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;

public class WeatherCacheInterceptor implements MethodInterceptor {

	private WeatherCache cache;

	public void setCache(WeatherCache cache) {
		this.cache = cache;
	}

	public Object invoke(MethodInvocation invocation) throws Throwable {
		Object[] args = invocation.getArguments();
		String key = (String) args[0];
		System.out.println(key);
		if (cache.isKeyInCache(key)) {
			System.out.println("call the data in Cache......");
			return cache.get(key);
		} else {
			Object value = invocation.proceed();
			cache.put(key, (String) value);
			return value;
		}
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?