gpt4 book ai didi

java - Spring AOP - 基于属性文件值的切入点

转载 作者:行者123 更新时间:2023-11-30 07:50:33 26 4
gpt4 key购买 nike

我正在使用 Spring AOP,我希望能够定义一个切入点,只要调用包内的方法(其名称在属性文件中定义),就会触发该切入点。也就是说,我的切入点看起来像

@Pointcut("within(${base.packageName}.*)")
public void MyPointCut() {}

然后如果我的配置文件有

base.packageName=foo.bar

然后在运行时切入点的行为就像这样

@Pointcut("within(foo.bar.*)")
public void MyPointCut() {}

我尝试了几种不同的方法(例如,在切入点表达式中使用 SpEL,配置一个实现静态切入点接口(interface)的类)但没有任何效果。

在 spring 中有什么方法可以根据在配置文件中找到的值来定义切入点?

最佳答案

这是不可能的,因为注释值必须是编译时常量表达式。因此,您的切入点无法解析 ${} 占位符,因为占位符解析发生在运行时。查看更多here .

关于java - Spring AOP - 基于属性文件值的切入点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47735761/

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