温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

使用Spring MVC拦截器实现日志记录的方法

发布时间:2020-10-24 17:08:31 来源:脚本之家 阅读:237 作者:奔跑着的国风 栏目:编程语言

最近在研究Spring MVC拦截器,那么今天也算个学习笔记吧!有需要了解使用Spring MVC拦截器实现日志记录的朋友可参考。希望此文章对各位有所帮助。

1.  定义一个类实现HandlerInterceptor,比如: 

public class MyInterceptors implements HandlerInterceptor{ 
  /** 
   * 在渲染视图之后被调用; 
   * 可以用来释放资源 
   */  
  public void afterCompletion(HttpServletRequest arg0, 
      HttpServletResponse arg1, Object arg2, Exception arg3) 
      throws Exception { 
    // TODO Auto-generated method stub 
    System.out.println("MyInterceptors afterCompletion"); 
  } 
  /** 
   * 该方法在目标方法调用之后,渲染视图之前被调用; 
   * 可以对请求域中的属性或视图做出修改 
   * 
   */ 
  public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, 
      Object arg2, ModelAndView arg3) throws Exception { 
    // TODO Auto-generated method stub 
    System.out.println("MyInterceptors postHandle");     
  } 
 
  /** 
   * 可以考虑作权限,日志,事务等等 
   * 该方法在目标方法调用之前被调用; 
   * 若返回TURE,则继续调用后续的拦截器和目标方法 
   * 若返回FALSE,则不会调用后续的拦截器和目标方法 
   * 
   */ 
  public boolean preHandle(HttpServletRequest arg0, HttpServletResponse arg1, 
      Object arg2) throws Exception { 
    // TODO Auto-generated method stub 
    HandlerMethod handlerMethod = (HandlerMethod) arg2;  
    System.out.println("MyInterceptors preHandle 调用方法名:"+handlerMethod.getMethod().getName()); 
    /* 
      写一个日记类和Service,将需要的属性保存到数据库       
    */ 
 
    return true; 
  } 
 
} 

2.在Springmvc.xml中装配 

<!-- 装配拦截器 --> 
<mvc:interceptors> 
  <mvc:interceptor> 
  <mvc:mapping path="/*"/> 
    <bean class="com.datatub.springmvc.interceptors.MyInterceptors"></bean> 
  </mvc:interceptor> 
</mvc:interceptors> 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持亿速云。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI