读书人

AOP_运用spring框架进行面向切面编程

发布时间: 2012-10-24 14:15:58 作者: rapoo

AOP_使用spring框架进行面向切面编程

用spring实现AOP有两种方式:基于xml配置方式和基于注解方式,

基于注解方式

一、架包:cglib-nodep-2.1_3.jar? aspectjweaver.jar? aspectjrt.jar(AOP)

????? 其它架包:common-annotations.jar?? spring.jar??? commons-logging.jar

二、先在配置文件中加入如下内容

三、启动对 aspectj 的支持,在xml文件中加入如下内容

三、PersonServiceImp.java

package com.qh.service;/* * 切面的实现 */import org.aspectj.lang.ProceedingJoinPoint;public class MyInterceptor {public void doBeforeOne(){System.out.println("我是第一个前置通知!");}public void doBefore(String str){System.out.println("我是前置通知!"+str);}public void doAfterReturning(String str){System.out.println("我是后置通知!"+str);}public void doAfterThrowing(Exception e){System.out.println("我是例外通知!"+e);}public void doAfter(){System.out.println("我是最终通知!");}public Object doAround(ProceedingJoinPoint pjp) throws Throwable{System.out.println("我是环绕通知!进入方法");//if(){Object object=pjp.proceed();//一定要执行的方法,假如不执行该方法,被拦截的方法是不会执行的//}System.out.println("我是环绕通知!退出方法");return object;}}

??? 其它代码和第一种方法一样。

四、注意

?? ?要将上面2个类交给spring容器管理

??? 需要注意切入点执行的方法的参数

????????????

读书人网 >编程

热点推荐