SpringMVC如何自定义拦截器 权限控制,事务控制

 时间:2024-10-31 18:32:20

1、新建一个实现了HandlerInterceptor接口的java类FirstInterceptor:

SpringMVC如何自定义拦截器 权限控制,事务控制

2、FirstInterceptor接口的实现我们打印每个方法的名字:package com.gwolf.springmvc.interceptors;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.web.servlet.HandlerInterceptor;import org.springframework.web.servlet.ModelAndView;public class FirstInterceptor implements HandlerInterceptor { @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { System.out.println("preHandle--------"); return true; } @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { System.out.println("postHandle--------"); } @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { System.out.println("afterCompletion--------"); }}

SpringMVC如何自定义拦截器 权限控制,事务控制

3、在springmvc的配置文件中声明我们的拦截器:<mvc:interceptors> <bean class="com.gwolf.springmvc.interceptors.FirstInterceptor"></bean> </mvc:interceptors>

SpringMVC如何自定义拦截器 权限控制,事务控制

4、执行项目中的任意jsp页面,我们会发现我们自定义拦截器的三个方法都执行了。

SpringMVC如何自定义拦截器 权限控制,事务控制

5、preHandle方法是在目标方法执行之前执行的,如果这个方法返回false,后面的拦截器也不会被执行,并且目标方法也不会被执行。只有返回值为true,则继续调用后续的拦截器和目标方法。

SpringMVC如何自定义拦截器 权限控制,事务控制

6、postHandle方法是在目标方法执行之后,渲染页面之前执行调用。

SpringMVC如何自定义拦截器 权限控制,事务控制

7、afterCompletion方法是在渲染视图之后调用的。

SpringMVC如何自定义拦截器 权限控制,事务控制

8、在preHandle方法中可以考虑做权限,日志,事务。postHandle方法可以对请求域的属性或视图做出修改。afterCompletion用于释放资源。

SpringMVC如何自定义拦截器 权限控制,事务控制
  • pandas生成对象的几种基本方法
  • linux下删除指令rm的用法
  • 易语言系列教程:[1]设置易语言及第一个程序
  • 怎么用易语言制作个人功能的记事本
  • dz论坛怎么去掉power by discuz版权
  • 热门搜索
    我爱科学手抄报内容 电子版手抄报 寻访红色足迹手抄报 民族精神代代传手抄报 手抄报版式 元旦节手抄报图片 小学安全知识手抄报 遵纪守法手抄报图片 美术手抄报 阅读的手抄报