Spring的基于Aspectj的aop开发

aspectj是什么

1、Aspectj是一款基于Java语言的aop框架 2、Spring2.0以后对Aspectj的切点表达式的支持 3、@Aspectj 是Aspectj 1.5新增的功能 通过JDK5注解技术,允许直接在Bean类中直接定义切面 4、新版本的Spring的框架,建议使用Aspectj框架开发Aop 5、导入:Spring Aop 和 Aspectj相关jar包

@AspecrtJ 提供不同的通知类型

1、@Before 前置 2、@AfterReturning 后置 3、@Around 环绕 4、@AfterThrowing 异常抛出通知 5、@After 最终final通知 finally

1、切入点表达式: execution()函数
2、语法:execution(<访问修饰符>?<返回类型><方法名>(<参数>)<异常>)
3、例子:
execution(public * (…))
execution(
com.dodoke.dao.(…))//不包含子包
execution(
com.dodoke.dao…(…))//…表示包、子孙包下所有类
execution(
com.dodoke.service.UserService.
(…))
execution(* com.dodoke.dao.UserDao+.(…)) +表示接口或者抽象类下面的实现类
execution(
save*(…))

Spring的基于Aspectj的aop开发