主要 log打印,打印请求request信息(url,method,ip,类方法,参数)
aop获取方法名,参数,结果集
ServletRequestAttributes attributes = RequestContextHolder.getRequestAttributes();
HttpServletRequest request = attributes.getRequest();
after returning获取方法的执行返回结果
在所有执行http请求之前,记录http请求的url,method,ip,类方法,参数
通过AOP处理请求:
url(请求路径)
method(请求方式:get,post)
请求类方法
请求参数
切面方法中使用@AfterReturning注解可以获得方法的执行结果。
获取请求相关参数:
ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); HttpServletRequest request = attributes.getRequest();
捕获控制器返回的数据
获取客户端请求相关信息
@Pointcut("……")指定切入点
@Before("log()")直接使用共公指定的切入点
RequestContextHolder获取request。
JointPoint 获取切点信息
RequestContextHolder获取request。
JointPoint 获取切点信息
@AfterReturning注解用于处理返回的参数
JointPoint可以获取请求的类的类型信息
获取请求的属性
切面在获取拦截的对象。
在切面中获取HttpServletRequest
如何获取Http 返回的内容呢?
@AfterReturning(returning="object",pointcut="log()")
使用 logger 记录url/method/ip/类方法/参数
joinPoint获取类方法,参数
推荐使用 Logger 方式记录日志
AfterReturing注解:
输出请求的基本信息
@AfterReturn注解,可以在console打印出返回的object及内容(可以像添加getter和setter一下添加toString方法)
获取类方法的方式:
首先传参加入joinPoint
然后在输出时使用joinPoint的方法
日志的记录方式,和在string里面进行输出的传参方式
将@Before请求这个路径前的作输出改成实际要做的操作,记录一些信息(http请求内容):
url:
注意HttpServletRequest要选javax.servlet.http
method
ip
类方法
参数
获取HttpServlet的内容
JoinPoint对象封装了SpringAop中切面方法的信息,在切面方法中添加JoinPoint参数,就可以获取到封装了该方法信息的JoinPoint对象.
常用api :
Signature getSignature(); 获取封装了署名信息的对象,在该对象中可以获取到目标方法名,所属类的Class等信息
Object[] getArgs(); 获取传入目标方法的参数对象
获取URL中的内容