Pointcut优化
parent
1b08aae6aa
commit
4fdff4ada6
|
@ -35,6 +35,7 @@
|
|||
+ 提供了匹配规则,以确定在哪些方法上应用切面。这些规则可以基于方法的名称、参数、返回类型、类名称等多种条件来定义,从而实现对切入点的精确定位。
|
||||
|
||||
3. **获取类过滤器**
|
||||
|
||||
+ `getClassFilter()` 方法用于获取一个 `ClassFilter` 对象,该对象用于确定哪些类应该被匹配。我们可以根据自己的需求自定义类过滤逻辑。
|
||||
|
||||
4. **获取方法匹配器**
|
||||
|
@ -89,6 +90,7 @@ public interface Pointcut {
|
|||
+ 根据方法名称匹配的切入点。可以配置指定的方法名称或通配符,以匹配目标类中的方法。
|
||||
|
||||
2. **JdkRegexpMethodPointcut**
|
||||
|
||||
+ 使用正则表达式匹配方法的切入点。可以使用正则表达式指定方法的匹配规则。
|
||||
|
||||
3. **AspectJExpressionPointcut**
|
||||
|
@ -380,8 +382,11 @@ MethodMatcher MyService setName = true
|
|||
1. **切入点表达式定义错误**
|
||||
|
||||
+ 使用 AspectJ 表达式时,可能会由于表达式定义错误导致切入点匹配失败。例如,表达式写错了、漏掉了必要的切入点信息等。
|
||||
3. **切入点过于宽泛**
|
||||
|
||||
2. **切入点过于宽泛**
|
||||
|
||||
+ 切入点定义过于宽泛,导致匹配到了不必要的方法,使得通知影响范围过大。这可能会导致性能问题或意外的行为。
|
||||
|
||||
4. **切入点过于狭窄**
|
||||
|
||||
+ 切入点定义过于狭窄,导致无法匹配到预期的目标方法,使得通知无法正确应用。这可能会导致切面无法达到预期的效果。
|
Loading…
Reference in New Issue