美文网首页
SpringAOP面向切面XML配置

SpringAOP面向切面XML配置

作者: 蚁丶点 | 来源:发表于2019-03-06 19:55 被阅读0次

    1.命名空间引入

    image.png
    xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans.xsd
    http://www.springframework.org/schema/aop
    http://www.springframework.org/schema/aop/spring-aop.xsd"

    2.切面配置


    image.png

    aop:pointcut expression定义被切的方法
    被切方法..代表任意参数
    id定义这个被切方法的id,已便后面切

    ref定义用来切的类,method定义那个方法来切
    方法定义
    public void doBefore(JoinPoint jp){
    System.out.println("类名:"+jp.getTarget().getClass().getName());
    System.out.println("方法名:"+jp.getSignature().getName());
    System.out.println("开始添加学生:"+jp.getArgs()[0]);
    }

    public void doAfter(JoinPoint jp){
        System.out.println("类名:"+jp.getTarget().getClass().getName());
        System.out.println("方法名:"+jp.getSignature().getName());
        System.out.println("学生添加完成:"+jp.getArgs()[0]);
    }
    
    public Object doAround(ProceedingJoinPoint pjp) throws Throwable{
        System.out.println("添加学生前");
        Object retVal=pjp.proceed();
        System.out.println(retVal);
        System.out.println("添加学生后");
        return retVal;
    }
    
    public void doAfterReturning(JoinPoint jp){
        System.out.println("返回通知");
    }
    
    public void doAfterThrowing(JoinPoint jp,Throwable ex){
        System.out.println("异常通知");
        System.out.println("异常信息:"+ex.getMessage());
    }

    相关文章

      网友评论

          本文标题:SpringAOP面向切面XML配置

          本文链接:https://www.haomeiwen.com/subject/gnljoftx.html