频道栏目
首页 > 资讯 > 其他 > 正文

SpringMVC使用拦截器和过滤器详情

17-11-08        来源:[db:作者]  
收藏   我要投稿

1.使用过滤器:场景:过滤乱码

web.xml文件中配置

   
    
    characterEncodingFilter  
    org.springframework.web.filter.CharacterEncodingFilter  
      
        encoding  
        UTF-8  
      
      
        forceEncoding  
        true  
      
    
    
    characterEncodingFilter  
    /*  
  
2.使用拦截器:Interceptor

首先在***-servlet.xml中配置,注册拦截器

  
  
三个MVC是必需的,命名空间之类

    
		
			
			
		
	 
TestInterceptor
public class TestInterceptor implements HandlerInterceptor{

	public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
			throws Exception {
		//使用场景:过滤字符编码
		request.setCharacterEncoding("utf-8");
		//使用场景:判断用户是否登陆,用户未登录返回登录页面
		if(request.getSession().getAttribute("user")==null) {
			request.getRequestDispatcher("/clients/login").forward(request, response);
			return false;
		}
		System.out.println("执行到此处preHandle");
		//返回值表示拦截到此处,是否继续执行
		//false表示停止执行,true表示继续执行
		return true;
	}

	public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
			ModelAndView modelAndView) throws Exception {
		modelAndView.addObject("msg", "从postHandle获得的msg");
		System.out.println("执行到此处postHandle");
	}

	public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
			throws Exception {
		System.out.println("执行到此处afterCompletion");
	}

}
相关TAG标签
上一篇:C语言中强制类型转换目的、基本格式、C中变量的本质含义
下一篇:IDEA常用快捷键总结
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站