7、Eternal框架-拦截器

拦截器有2中类型:全局和私有。全局拦截器所有控制器都会调用,在web.xml配置;私有只某个控制器的,在Mapping注解中配置。

拦截器作用:拦截控制器的,大家知道,拦截后他能干什么呢?目前比较简单,只能得控制器中传进来的参数,和动态改变参数。参数在Execution类中获得,在后续中会有其他更新,如执行前、执行后、视图渲染前拦截等。

DefaultInterceptor.java拦截器示例:

package demo;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

import cn.eternal.handler.Execution;
import cn.eternal.interceptor.Interceptor;

public class DefaultInterceptor implements Interceptor {

	private static Log log = LogFactory.getLog(DefaultInterceptor.class);
	@Override
	public void intercept(Execution execution)
			throws Exception {
		StringBuffer str = new StringBuffer();
		for(Object t:execution.getArgs()){
			str.append(t);
			str.append(",");
		}
		str.deleteCharAt(str.length()-1);
		log.info("执行拦截器 DefaultInterceptor,参数为="+str.toString());
	}
}



你可能感兴趣的:(框架,拦截器,初始化,控制器,eternal)