package framework.base; import java.util.Enumeration; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView; /** * 有选择的将 request 中的parameter 放在attribute里 * * @company 北京贝思科技术有限公司 * @author liuyajun, 8384503@qq.com * @date 2016年2月18日 * @time 上午11:17:34 */ public class RequestParameterInterceptor implements HandlerInterceptor { @Override public void afterCompletion(HttpServletRequest req, HttpServletResponse res, Object obj, Exception e) throws Exception { } @Override public void postHandle(HttpServletRequest req, HttpServletResponse res, Object obj, ModelAndView mv) throws Exception { Enumeration en = req.getParameterNames(); while(en.hasMoreElements()){ String name = en.nextElement(); if(req.getAttribute(name) !=null){ //已经存在,不处理 continue; } req.setAttribute(name, req.getParameter(name)); } } @Override public boolean preHandle(HttpServletRequest req, HttpServletResponse res, Object obj) throws Exception { return true; } }