欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

spring aop expression简单说明

程序员文章站 2022-03-03 09:42:17
...

 

  • spring aop expression简单说明
例1:
<aop:config>
       <aop:pointcut id="userDAO"
           expression="execution(public * cn.dao.IUserDAO.*(..))" />
       <aop:advisor advice-ref="tx" pointcut-ref="userDAO"/>
</aop:config>

在上面的代码中

public                    是指定公共的方法,也可以不写直接写成:execution(* cn.dao.IUserDAO.*(..))
*                         任意返回值
cn.dao.IUserDAO.*         在指定目录下类的任意方法
cn.dao.IUserDAO.insert*  在指定目录下类的所有以inser开头的方法
cn.dao..                  在指定目录下任意类任意方法
(..)                      任意参数
全文:匹配cn.dao.IUserDAO下的所有方法

在execution中是可以有多个的方法,例如:

 

execution(* com.action.userinfoAction..*(..))&&execution(* com.action.memberAction..*(..))&&!execution(* get*(..))&&!execution(* set*(..))

 

例2:

<aop:config>

<aop:advisor pointcut="execution(* *..*ServiceImpl.*(..))" advice-ref="transactionAdvice" />

</aop:config> 

 

在上面代码中

 

第一个的符号(*) 任意返回值

第二个的符号(*..) 任意包 (test/com.mangocity.test)

第三个的符号(*ServiceImpl) 任意以ServiceImpl结尾的类

第四个的符号(.*) 任意方法

第五个的符号(..) 任意参数

全文:匹配任意包 以ServiceImpl结尾的类下的所有方法