AOP实现获取方法的入参类型,入参值,返回值类型以及返回值
1,需求
想利用AOP技术实现对方法访问的入参以及返回值进行抓取,打印日志,或者将内容记录到数据库当中,方便日后查询日志定位问题,复现问题。
2,说明
代码实现分为
AopConfig.java :AOP切面类,实现对方法的入参以及返回值的打印
AopTestServiceImpl:AOP测试类,测试AOP打印入参以及返回值的类,入参包括对象类型
HelloDto:入参以及返回值的对象类型
3,代码实现
package com.spring.study.common.aop;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.*;
import org.aspectj.lang.reflect.MethodSignature;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.core.DefaultParameterNameDiscoverer;
import org.springframework.core.ParameterNameDiscoverer;
import org.springframework.stereotype.Component;
import java.lang.reflect.Method;
import java.util.HashMap;
@Aspect
@Component
public class AopConfig {