Spring AOP 切入点表达式使用

1、切入点表达式
1)匹配类型
用于匹配哪些类型的方法启用方面组件,语法格式如下
within(类型)
--匹配容器中HibernateCostDaoImpl的所有方法
within(com.tarena.dao.HibernateCostDaoImpl)
--匹配com.tarena包下所有类的所有方法
within(com.tarena.*)
--匹配com.tarena包及子包的所有类的所有方法
within(com.tarena..*)

2)匹配方法
用于匹配哪些方法启用方面组件,语法格式如下
execution(修饰符? 返回类型 方法名(参数列表) throws异常?)
--匹配所有对象的delete方法
execution(* delete(..))
--匹配HibernateCostDaoImpl的delete方法
execution(* com.tarena.dao.HibernateCostDaoImpl.delete(..))
--匹配HibernateCostDaoImpl的所有方法
execution(* com.tarena.dao.HibernateCostDaoImpl.*(..))
--匹配com.tarena包下所有类的所有方法
execution(* com.tarena.*.*(..))
--匹配com.tarena包及子包下所有类的所有方法
execution(* com.tarena..*.*(..))
3)匹配bean名称
用于匹配bean的id属性,语法格式如下
bean(id属性值)
--匹配id="costDao"的组件的所有方法
bean(costDao)
--匹配所有id以Dao结尾的组件的所有方法
bean(*Dao)
4)匹配参数
用于匹配参数类型和个数,代码格式如下
args(参数列表)
--匹配有一个参数并且为String类型的所有方法
args(java.lang.String)

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。