gpt4 book ai didi

java - 我如何在 Spring AOP 中访问实际的方法参数名称?

转载 作者:行者123 更新时间:2023-11-30 11:45:30 24 4
gpt4 key购买 nike

我迫切需要这方面的帮助。我一直在寻找一种方法来做到这一点。我在 Tomcat 7 中运行的 Web 应用程序中使用 Spring AOP。我正在尝试使用 @Before 建议来打印方法切入点的实际参数的名称和值。首先,我认为只需使用 -g 选项编译类文件就可以解决问题。那没有用。然后我在某处的一篇文章中读到,使用 AspectJ 加载时织入肯定可以解决问题。所以我为 Tomcat 7 做了以下操作:

在我的 context.xml 中

<Loader loaderClass="org.springframework.instrument.classloading.tomcat.TomcatInstrumentableClassLoader"/>

在我的 config.xml 中

<context:load-time-weaver weaver-class="org.springframework.instrument.classloading.ReflectiveLoadTimeWeaver"/>

但是当我调用 MethodSignature.getParameterNames() 时它仍然返回 null。

所以我的问题是:有没有办法从建议中获取方法的参数名称?如果是怎么办?

最佳答案

使用调试信息进行编译是一项要求。

然后您可以使用 org.springframework.core.LocalVariableTableParameterNameDiscoverer 的实例来解析参数名称。

关于java - 我如何在 Spring AOP 中访问实际的方法参数名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10324416/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com