AOP实现一个拦截转发——简单配置和应用

本文介绍如何使用AOP在原有项目入口处拦截请求,根据条件决定请求继续走老项目还是新项目。由于拦截器返回类型不适用于有返回值的接口,故选择AOP注解方式进行实现。在配置文件中启用,创建切面进行逻辑判断。操作中可能遇到的问题包括参数乱码和结果封装格式问题,需针对性处理。
摘要由CSDN通过智能技术生成

大概情况是这样的,两个项目,有相同的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
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值