Aop编程-AspectJ

AspectJ是一个基于Java语言的AOP框架
Spring2.0以后新增了对AspectJ切点表达式支持
@AspectJ 是AspectJ1.5新增功能,通过JDK5注解技术,允许直接在Bean类中定义切面,新版本Spring框架,建议使用AspectJ方式来开发AOP
主要用途:自定义开发

execution() 用于描述方法 【掌握】
语法:execution(修饰符 返回值 包.类.方法名(参数) throws异常)
修饰符,一般省略
public 公共方法
* 任意
返回值,不能省略
void 返回没有值
String 返回值字符串
* 任意
包,[省略]
com.zhiyou100.app 固定包
com.zhiyou100.app.*.service app包下面子包任意 (例如:com.zhiyou100.app.system.service)
com.zhiyou100.app.. app包下面的所有子包(含自己)
com.zhiyou100.app.*.service.. app包下面任意子包,固定目录service,service目录下的任意包
类,[省略]
UserServiceImpl 指定类
*Impl 以Impl结尾
User* 以User开头
* 任意
方法名,不能省略
addUser 固定方法
add* 以add开头
*Do 以Do结尾
* 任意
(参数)
() 无参
(int) 一个整型
(int ,int) 两个
(..) 参数任意
throws ,可省略,一般不写。

在多个表达式之间使用 ||,or表示 或,使用 &&,and表示 与,!表示 非.例如:
一个切面切两个方法

@AfterReturning(pointcut = "(execution(* com.huajin.scfserver.service.company.CompanyRootService.auditCompany(..))) or (execution(* com.huajin.scfserver.service.person.PersonRootService.audit(..)))", returning = "returnValue")
    public void auditCompany(JoinPoint point, Object returnValue) {

    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值