首页 > 其他 > 详细

aop实现记录后端用户访问

时间:2020-07-22 20:23:19      阅读:66      评论:0      收藏:0      [点我收藏+]

记录:

  访问ip, 请求链接, 请求参数, 请求头, 返回信息...

 

问题1:

  如何实现aop切片的就是Controller中的请求方法?

    监听xxxController下的所有方法?

      担心Controller中有部分方法是普通方法,例如private String datePares(Date date)这种

    使用过滤器?

      此业务不应该用过滤器

    使用拦截器?

      要求参照前面aop的例子完成,所以先不考虑。

  解决方案:

   spring的切点定义允许通过注解定位,结合execution表达式完成切点。

  @Pointcut(" @annotation(org.springframework.web.bind.annotation.PostMapping)"
      + " || @annotation(org.springframework.web.bind.annotation.PutMapping)"
      + " || @annotation(org.springframework.web.bind.annotation.DeleteMapping)"
      + " || @annotation(org.springframework.web.bind.annotation.RequestMapping)")
  private void requestAspect() {
  }

  @Pointcut("execution(* com.duoyu.home..* (..))")
  private void backendAspect() {

  }

  @Around("requestAspect() && backendAspect()")
  public Object run(ProceedingJoinPoint point) throws Throwable {

 

问题2:

  处理方法中如何得到HttpServletRequest?

  

 

 

。。。。。。。

 

aop实现记录后端用户访问

原文:https://www.cnblogs.com/aigeileshei/p/13362639.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!