基于注解的切面(Spring4)------简单实例

本文介绍了Spring4中基于注解的切面编程,包括涉及的注解如@Component、@Aspect等,详细解析了切点表达式的使用,如execution()的多种匹配方式,并给出了具体的代码实现示例。
摘要由CSDN通过智能技术生成

一、涉及的注解

@Component-----放入spring容器-----类注解

@Aspect-----切面-----类注解

@Order(int)----指定切面的优先级,int值越小优先级越高-----类注解

@Before("excution(*.*(..))")-----前置通知---方法注解

@After(......)------后置通知---方法注解

@AfterReturning------方法正常结束后执行,可以访问返回值---方法注解

@AfterThrowing-----出异常会自动调用改方法---方法注解

@Around(......)-------环绕通知--------方法注解

二、切点表达式

①execution

execution的语法表达式如下:execution(<修饰符> <返回类型> <类路径> <方法名>(<参数列表>) <异常模式> )

其中,修饰符和异常是可选的,如果不加类路径,则默认对所有的类生效。它常用实例如下:

②通过方法名、返回值:

- `execution(public * *findname(..))`:定位于所有类下返回值任意、方法入参类型、数量任意,public类型的findname方法

- `execution(public String *findname(..))`:定位于所有类下返回值为String、方法入参类型、数量任意,public类型的findname方法

③通过类包:

- `execution(* com.montnets.controller.BaseController.*(..))`:匹配任意返回类型,对应包下BaseController类及其子类等任意方法。

- `execution(* com.*.(..))`:匹配任意返回类型,com包下所有类的所有方法

- `execution(* com..*.(..))`:匹配任意返回类型,com包、子包下所有类的所有方法

注意.表示该包下所有类,..则涵括其子包。

④ 通过方法入参

- 这里“

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值