springmvc 中自定义拦截器
来源:互联网 发布:.us域名查询 编辑:程序博客网 时间:2024/05/29 18:16
1、自定义拦截器,实现HandlerIterceptor接口
package cn.zzsxt.interceptor;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import org.springframework.web.servlet.HandlerInterceptor;import org.springframework.web.servlet.ModelAndView;import cn.zzsxt.entity.Userinfo;/** * 用户登陆的访问权限控制 * @author Think * */public class LoginIntercetor implements HandlerInterceptor {/** * 在控制器方法调用前执行 * 返回值为是否中断 * true,表示继续执行(下一个拦截器或处理器) * false则会中断后续的所有操作,所以我们需要使用response来继续响应后续请求*/@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object object) throws Exception {System.out.println("LoginInterceptor...preHandle");//获取sessionHttpSession session = request.getSession();Userinfo user = (Userinfo)session.getAttribute("loginUser");if(user!=null){//登陆用户return true;}else{String path=request.getServletContext().getContextPath();System.out.println("path="+path);response.sendRedirect(path+"/login.jsp");return false;}}/*** 在控制器方法调用后,解析视图前调用,我们可以对视图和模型做进一步渲染或修改 * 可在modelAndView中加入数据,比如当前时间*/@Overridepublic void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3)throws Exception {}/*** 整个请求完成,即视图渲染结束后调用,这个时候可以做些资源清理工作,或日志记录*/@Overridepublic void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3)throws Exception {}}
2、配置springmvc.xml
<!--配置拦截器, 多个拦截器,顺序执行 --><mvc:interceptors> <!-- 匹配的是url路径, 如果不配置或/**,将拦截所有的Controller --> <mvc:interceptor> <mvc:mapping path="/**"/> <mvc:exclude-mapping path="/user/login"/> <bean class="cn.zzsxt.interceptor.LoginIntercetor"></bean> </mvc:interceptor> <!-- 当设置多个拦截器时,先按顺序调用preHandle方法,然后逆序调用每个拦截器的postHandle和afterCompletion方法 --></mvc:interceptors>
阅读全文
0 0
- springmvc 中自定义拦截器
- springMVC 自定义拦截器
- springmvc自定义拦截器
- SpringMVC 自定义拦截器
- springmvc自定义拦截器
- springMVC自定义拦截器
- springMVC 自定义拦截器
- springMVC 自定义拦截器
- SpringMvc自定义拦截器
- SpringMVC自定义拦截器
- SpringMvc自定义拦截器
- SpringMVC自定义拦截器
- SpringMVC 自定义拦截器
- 【SpringMVC】自定义拦截器
- springMVC自定义拦截器
- SpringMVC利用拦截器拦截自定义注解
- SpringMVC自定义拦截器详解
- SpringMVC自定义拦截器详解
- OpenCv中的cv::Mat::create()函数,cvRound(),cvFloor(),cvCeil()函数的详解l
- getch()和getchar()之再讨论
- Unix/Linux下的open函数(O_CREAT和O_EXCL)
- sql执行顺序
- adb常用命令
- springmvc 中自定义拦截器
- HTML5新增的标签
- 我的第一次java考试题目
- PHP MySQL 增查删改
- php实现哈希表
- Merge Two Sorted Lists
- NOIP模拟(11.02)T4 赌博游戏
- 11.2考试爆炸记
- opencv----霍夫(Hough)变换:霍夫线变换,霍夫圆变换