当前位置: 首页 > 知识库问答 >
问题:

在AOP中从方法B返回后如何访问方法A中的方法属性?[副本]

曹嘉许
2023-03-14

我在Spring后端项目中有方法A,在执行不同的方法B后应该调用它。返回方法B的类型是void,但在成功执行方法B后,我需要将一个输入参数从方法B传递到方法A。

void invite(int eventId, int userId, Integer[] invitees,
        EventInvitationMethod push, String content);
@AfterReturning(pointcut="execution(* xyz.zzz.api.event.service.EventService.invite(..))")
public void newInvitation(InputParameter of B - int userId){
     ///Do something with userId
}

共有1个答案

徐卓
2023-03-14

好的,我是这样解决问题的:

@AfterReturning(pointcut = "execution(* xyz.zzz.api.event.service.EventService.invite(..))")
public void newInvitation(JoinPoint joinPoint) {
    Object[] args = joinPoint.getArgs();
    ///I am working with args, looking for an instance of Integer[]
}

希望它能帮助到某人。

 类似资料:
  • 问题内容: 我在ServerConnectionManager中有以下代码: 我在其他一些使用ServerConnectionManager的线程的run方法中有一些代码:让我们将此线程称为B 问题是我无法从ServerConnectionManager的run方法中调用ReceivedPacket上的任何方法。但是,我能够从此ServerConnectionManager线程的构造函数中调用re

  • 问题内容: JavaScript中的方法在数组中添加项或从数组中删除项。用Java语言实现这种方法的最佳和简单解决方案是什么?假设我们有数组。 问题答案: 这是根据JavaScript MDN规范 的方法的Java实现。 以下JUnit代码测试了此实现: 编辑: 正如@denys- séguret正确指出的那样,此实现与JavaScript规范不同,因为它不会更改/修改原始数组。而是,此实现返回一

  • 我正在开发一个计算圆形和方形(类)面积的小练习java程序,该程序实现了surface(接口),它有一个名为area()的方法。我需要实现一个名为SumArea的类,该类有一个名为Calcrea()的通用方法,该方法接收Circle circ[]和Square Square[]数组,并执行面积计算 程序结构: - urface.java quare.java 圆圈java rea.java 我怀疑

  • 我对我的代码有个问题。我已经将类Employee声明为抽象。其下有3种抽象方法:抽象字符串部门、抽象int work_days和抽象void print_info。 现在,我创建了扩展Employee抽象类的第二类Tester。我实现了抽象方法。

  • 我希望能够在RestController方法(或endpoint)作为数据流序列化为HttpServletResponse之前修改它返回的POJO。但是我希望能够在控制器方法代码之外(作为中间件)完成。 我曾尝试使用HandlerInterceptor来完成此操作,但我无法访问POJO。我也尝试过使用AOP,但从未调用切入点。 我希望能够在控制器执行自己的逻辑并返回后,向控制器返回的资源添加列表(