大概情况是这样的,两个项目,有相同的rest接口,本来请求走的是一个项目,后来要迁移到另一个项目,但是不能一次性全部切换,所以需要在原有的项目入口处进行拦截,判断这个请求是继续走老的项目,还是去请求新的项目。本来是打算用拦截器的,但是拦截器的返回类型是Boolean类型,我的接口是下单请求,需要有返回值的,所以切换aop
aop有两种实现方式,一种是xml配置,一种是注解,我使用的是注解的形式
首先是需要在spring-mvc.xml中增加<aop:aspectj-autoproxy proxy-target-class="true"/>,这样你的注解才会生效,下面是写一个切面
@Aspect //aop切面的标志
@Component //必须有
public class ThirdpayAspectJ {
@Resource
private CorpManager medicalInstService;
public static final Logger logger = LoggerFactory.getLogger(ThirdpayAspectJ.class);
@Around("execution(* com.pay.openapi.*.*(..))")//切面出现的地方,应该是哪个包哪个类
public Object getThirdPay(ProceedingJoinPoint joinPoint) throw