zoukankan      html  css  js  c++  java
  • 【sping揭秘】15、afterreturning

    @afterreturning

    我们同理写几个测试类

    package cn.cutter.start.bean;
    
    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;
    import org.springframework.stereotype.Component;
    
    @Component
    public class AterReturningTestBean {
    
        private static final Log logger = LogFactory.getLog(AterReturningTestBean.class);
    
        public void aterReturningTest() {
            logger.info("aterReturningTest sds");
        }
        
        public int aterReturningTestInt() {
            logger.info("aterReturningTestInt");
            
            return 666;
        }
        
    }

    写几个测试的拦截器

    package cn.cutter.start.aop;
    
    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;
    import org.aspectj.lang.annotation.AfterReturning;
    import org.aspectj.lang.annotation.Aspect;
    import org.aspectj.lang.annotation.Pointcut;
    import org.springframework.stereotype.Component;
    
    /**
     * 
     * @author xiaof
     *
     */
    @Component
    @Aspect
    public class AterReturningAspect {
    
        private static final Log logger = LogFactory.getLog(AterReturningAspect.class);
        
        //execution(* cn.cutter.start.bean.BeofreTestBean.*(..))
        @Pointcut("execution(* cn.cutter.start.bean.AterReturningTestBean.*(..))")
        private void pointCut1() {}
        
        @AfterReturning(pointcut="pointCut1()", returning="value1")
        public void testReturn1(int value1) {
            
            logger.info("返回拦截:" + value1);
            
        }
        
        @AfterReturning(pointcut="pointCut1()")
        public void testReturn2() {
            
            logger.info("返回拦截:没有参数");
            
        }
        
    }

    结果:

    @Test
        public void testAop4() {
            ApplicationContext ctx = this.before();
            
            AterReturningTestBean att = (AterReturningTestBean) ctx.getBean("aterReturningTestBean");
            
    //        att.aterReturningTest();
            
            att.aterReturningTestInt();
            
        }

  • 相关阅读:
    Navicat Premium 15 永久激活版安装教程
    win10安装redis
    Linux下安装Go环境
    IoT platforms that deserves to be noticed
    TortoiseGit配置
    impot和require区别
    websocket搭建简单的H264实时视频流播放
    应用索引技术优化SQL 语句(Part 3)
    应用索引技术优化SQL 语句(Part 2)
    应用索引技术优化SQL 语句(Part 1)
  • 原文地址:https://www.cnblogs.com/cutter-point/p/8977821.html
Copyright © 2011-2022 走看看