美文网首页
Spring AOP之基于XML的AOP

Spring AOP之基于XML的AOP

作者: 夏与清风 | 来源:发表于2019-07-23 22:38 被阅读0次

spring提供了基于XML的AOP支持,采用“aop”命名空间。在spring配置中,所有的aspect和advisor元素都必须放在<aop:config>元素中,一个<aop:config>元素可以包含pointcut、advisor、aspect元素。

1、声明aspect

一个aspect是spring上下文中定义的一个普通Java对象,状态和行为被捕获到对象的字段和方法中,pointcut和advisor被捕获到XML中。如下:

<bean id="talk" class="com.xlws.spring.aop.Talk" />

<aop:config>

    <aop:aspect id="aspect1" ref="talk">

        ...

    </aop:aspect>

</aop:config>

2、声明pointcut

    pointcut可以在<aop:config>元素中声明,以便pointcut定义可以在几个aspect和advisor间共享。如下:

<aop:config>

    <aop:pointcut id="serv" expression="execution(* com.xlws.spring.aop.*.*(..))"/>

</aop:config>

3、声明advisor

advisor与@AspectJ风格支持的五种类型的advisor相同,语义也相同。如下:

<aop:config>

    <aop:aspect id="exam" ref="people">

        <aop:before pointcut-ref="oper" method="check"/>

    </aop:aspect>

</aop:config>

综合示例:

定义模型People 定义普通的POJO类Talk XML中定义切面及配置 定义入口Application 运行结果

--参考文献《Srping5开发大全》

相关文章

网友评论

      本文标题:Spring AOP之基于XML的AOP

      本文链接:https://www.haomeiwen.com/subject/xtddlctx.html