AspectJ
面向切面的框架,它扩展了Java语言,定义了AOP语法,能够在编译器提供代码织入
@Aspect
@AspectJ 5新增的功能,使用JDK5.0注解技术和整个的AspectJ切点表达式语言描述切面
Spring通过集成AspectJ实现了以注解的方式定增强类,大大减少了配置文件中的工作量
利用轻量级的字节码处理框架asm处理@AspectJ中描述的方法参数名
使用@AspectJ,首先要保证所用的JDK是5.0或者以上版本
使用注解实现日志切面
分析:
1.使用注解定义前置增强和后置增强实现日志功能
@Aspect
@Before
@AfterReturning
2.编写Spring配置文件,完成切面织入
<aop:aspectj-autoproxy/>:启用对于@AspectJ注解的支持
使用注解来定义一次抛出增强
使用@AfterThrowing注解定义异常抛出增强
使用注解来定义最终增强
使用@After注解定义最终增强
使用注解定义环绕增强
使用@Around注解定义环绕增强
使用注解方式定义切面可以简化配置工作量
常用注解有@Aspect,@Before,@AfterReturning,@Around,@AfterThrowing,@After等
在配置文件中添加<aop:aspectj-autoproxy/>元素,启用对于@AspectJ注解的支持
Spring在定义切莫时提供了多种选择,应根据项目的具体情况作出选择:
1,如果项目采用JDK5.0或以上版本,可以考虑使用@AspectJ注解方式减少配置的工作量
2,如果不愿意使用注解或者项目采用的JDK版本较低无法使用注解则可以选择使用<aop:aspect>配合普通javaBean的形式
面向切面的框架,它扩展了Java语言,定义了AOP语法,能够在编译器提供代码织入
@Aspect
@AspectJ 5新增的功能,使用JDK5.0注解技术和整个的AspectJ切点表达式语言描述切面
Spring通过集成AspectJ实现了以注解的方式定增强类,大大减少了配置文件中的工作量
利用轻量级的字节码处理框架asm处理@AspectJ中描述的方法参数名
使用@AspectJ,首先要保证所用的JDK是5.0或者以上版本
使用注解实现日志切面
分析:
1.使用注解定义前置增强和后置增强实现日志功能
@Aspect
@Before
@AfterReturning
2.编写Spring配置文件,完成切面织入
<aop:aspectj-autoproxy/>:启用对于@AspectJ注解的支持
使用注解来定义一次抛出增强
使用@AfterThrowing注解定义异常抛出增强
使用注解来定义最终增强
使用@After注解定义最终增强
使用注解定义环绕增强
使用@Around注解定义环绕增强
使用注解方式定义切面可以简化配置工作量
常用注解有@Aspect,@Before,@AfterReturning,@Around,@AfterThrowing,@After等
在配置文件中添加<aop:aspectj-autoproxy/>元素,启用对于@AspectJ注解的支持
Spring在定义切莫时提供了多种选择,应根据项目的具体情况作出选择:
1,如果项目采用JDK5.0或以上版本,可以考虑使用@AspectJ注解方式减少配置的工作量
2,如果不愿意使用注解或者项目采用的JDK版本较低无法使用注解则可以选择使用<aop:aspect>配合普通javaBean的形式