spring aop

xiaoxiao2026-08-31  22

在使用spring aop的时候碰到一个问题,在一个aop:config里面可以配多个切点表达式,在另外的aop:config里也是可以引用.配切面的时候,一个切面里面怎么不可以配多个通知,比如在记录日志的时候,有个logaspt类把它配置为切面,在这个切面里面配了一个前置的通知,是可以正常工作但是在配一个后置通知怎么就可以了,会出异常代码如下:

<!-- 日志aspectbean-->  <bean id="loggerBean" class="cn.hxex.springhibernate.base.LoggerBean"/>

<!-- 声明aop --> <aop:config>                                        <!-- 声明事务切点 -->   <aop:pointcut id="productServiceMethods"     expression="execution(* cn.hxex.springhibernate.service..*.*(..))"/>                                                      <!--声明日志切点 -->     <aop:pointcut id="loggerCalls"    expression="execution(* cn.hxex.springhibernate..*.*(..))"/>  <aop:advisor advice-ref="txAdvice" pointcut-ref="productServiceMethods" />    <aop:aspect id="logAspect" ref="loggerBean">      <!--声明日志切面-->                                                      <!--声明通知  -->         <aop:before pointcut-ref="loggerCalls" method="before"/>       <aop:after-returning pointcut-ref="loggerCalls" method="after"/>

    </aop:aspect>

  </aop:config>

难道一个切面不可以声明多个通知吗?

如果一个切面里不可以声明如一个前置或一个环绕的是一个理解的,怎么不可以声明一个前置和一个后置的?不解

 

 

 

知道了:切点表达式嵌套的太多了,把范围缩小就可以了

转载请注明原文地址: https://www.6miu.com/read-5052179.html

最新回复(0)