zoukankan      html  css  js  c++  java
  • spring aop 之annotation

    1.CutPointInterface

    public interface CutPointInterface {
        void method();
    }

    2.CutPointClass 

    @Component
    public class CutPointClass implements CutPointInterface {
    
        @Override
        public void method() {
            // TODO Auto-generated method stub
            System.out.println("切点类");
        }
    
    }

    3.AspectClass 

    @Aspect
    public class AspectClass {
        
        @Pointcut("execution(* com.lzp.annotationAop.CutPointInterface.method(..))")
        public void method(){
            
        }
        
        @Before("method()")
        public void before(){
            System.out.println("之前");
        }
        @After("method()")
        public void after(){
            System.out.println("之后");
        }
        
        
    }

    4.xml

    <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:context="http://www.springframework.org/schema/context"
        xmlns:aop="http://www.springframework.org/schema/aop"
        xmlns:tx="http://www.springframework.org/schema/tx"
        xsi:schemaLocation="http://www.springframework.org/schema/beans 
                             http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
                             http://www.springframework.org/schema/context
                             http://www.springframework.org/schema/context/spring-context-3.0.xsd
                             http://www.springframework.org/schema/tx
                             http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
                             http://www.springframework.org/schema/aop 
                             http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">
        <bean id="cutPointClass" class="com.lzp.annotationAop.CutPointClass"></bean>
        <bean id="aspectClass" class="com.lzp.annotationAop.AspectClass"></bean>
     <aop:aspectj-autoproxy proxy-target-class="true"/>
     
    </beans>

    5.mainTest

        ApplicationContext context = new ClassPathXmlApplicationContext(
                    "annotationAop.xml");
            CutPointInterface cutPoint=    (CutPointInterface) context.getBean("cutPointClass");
            cutPoint.method();

     注意jdk和aspect版本

    JDK1.6 —— aspectJ1.6

    JDK1.7 —— aspectJ1.7.3+

    参考:http://www.cnblogs.com/xing901022/p/4267563.html

  • 相关阅读:
    UVA1349 Optimal Bus Route Design 最优巴士路线设计
    POJ3565 Ants 蚂蚁(NEERC 2008)
    UVA1663 Purifying Machine 净化器
    UVa11996 Jewel Magic 魔法珠宝
    NEERC2003 Jurassic Remains 侏罗纪
    UVA11895 Honorary Tickets
    gdb调试coredump(使用篇)
    使用 MegaCLI 检测磁盘状态并更换磁盘
    员工直接坦诚直来直去 真性情
    山东浪潮超越3B4000申泰RM5120-L
  • 原文地址:https://www.cnblogs.com/lzhp/p/5567611.html
Copyright © 2011-2022 走看看