【问题标题】:What will be selected by execution expression in Spring AOP?Spring AOP 中的执行表达式会选择什么?
【发布时间】:2018-06-05 09:12:38
【问题描述】:

这个表达式在面向方面编程中会选择什么 - ("execution(* *.*(..))")?这会选择所有方法,而不考虑它们的范围、返回类型或参数吗?

【问题讨论】:

  • 除了这是一个草率、低质量的问题之外,我认为您在这里寻求建议可以帮助您避免查看 AspectJ 教程甚至五分钟。我建议你这样做,它应该回答你的问题。这个问题在这里是题外话。 SO 是关于解决编程问题,而不是回答一般问题。

标签: java spring aop aspectj aspect


【解决方案1】:

这取决于您的实施。 - Check this!

正如您在上面的链接中看到的,您可以将方法与特定的返回类型、参数和/或范围相匹配。 例如(如果您不急于打开此链接):

匹配 EmployeeManager 中的所有 public 方法

execution(public * EmployeeManager.*(..))

匹配 EmployeeManager 中的所有公共方法与返回类型 EmployeeDTO

execution(public EmployeeDTO EmployeeManager.*(..))

匹配EmployeeManager中的所有公共方法返回类型EmployeeDTO和第一个参数为EmployeeDTO

execution(public EmployeeDTO EmployeeManager.*(EmployeeDTO, ..))

【讨论】:

    【解决方案2】:

    ("execution(* .(..))") 所有方法都被选中

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多