<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    夢幻之旅

    DEBUG - 天道酬勤

       :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      671 隨筆 :: 6 文章 :: 256 評(píng)論 :: 0 Trackbacks
    Before Advice:
    package com.hwp.aop.adviceDemo;

    import java.lang.reflect.Method;

    import org.springframework.aop.MethodBeforeAdvice;

    public class BeforeAdviceDemo implements MethodBeforeAdvice {

        
    public void before(Method method, Object[] args, Object target)
                
    throws Throwable {
            System.out.println(
    "在方法運(yùn)行前,先運(yùn)行");
        }

        
    }

    After Advice:
    package com.hwp.aop.adviceDemo;

    import java.lang.reflect.Method;

    import org.springframework.aop.AfterReturningAdvice;

    public class AfterAdviceDemo implements AfterReturningAdvice{

        
    public void afterReturning(Object arg0, Method arg1, Object[] arg2,
                Object arg3) 
    throws Throwable {
            System.out.println(
    "方法執(zhí)行后.");
            
        }

        
    }

    Round Advice:
    package com.hwp.aop.adviceDemo;

    import org.aopalliance.intercept.MethodInterceptor;
    import org.aopalliance.intercept.MethodInvocation;

    public class AroundAdviceDemo implements MethodInterceptor {

        
    public Object invoke(MethodInvocation arg0) throws Throwable {
            System.out.println(
    "在round方法里,方法開始前..");
            Object result 
    = null;
            
    try {
                result 
    = arg0.proceed();
            }
     finally {
                System.out.println(
    "在round方法里,方法結(jié)束后");
            }

            
    return result;
        }


    }

    Throw Advice:
    package com.hwp.aop.adviceDemo;

    import java.lang.reflect.Method;

    import org.springframework.aop.ThrowsAdvice;

    public class ThowAdviceDemo implements ThrowsAdvice {
        
    public void afterThrowing(Method method, Object[] args, Object target,
                Throwable subclass) 
    {
            System.out.println(
    "異常拋出后..");
        }


    }

    beans.xml:
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi
    ="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation
    ="http://www.springframework.org/schema/beans
      http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"
    >
        
    <bean id="logBeforeAdvice"
            class
    ="com.hwp.aop.adviceDemo.BeforeAdviceDemo" />
        
    <bean id="logAfterAdvice"
            class
    ="com.hwp.aop.adviceDemo.AfterAdviceDemo" />
        
    <bean id="logRoundAdvice"
            class
    ="com.hwp.aop.adviceDemo.AroundAdviceDemo" />
        
    <bean id="throwAdvice"
            class
    ="com.hwp.aop.adviceDemo.ThowAdviceDemo" />
        
    <bean id="helloSpeaker" class="com.hwp.aop.adviceDemo.HelloSpeaker" />
        
    <bean id="helloProxy"
            class
    ="org.springframework.aop.framework.ProxyFactoryBean">
            
    <property name="proxyInterfaces"
                value
    ="com.hwp.aop.adviceDemo.IHello" />
            
    <property name="target" ref="helloSpeaker" />
            
    <property name="interceptorNames">
                
    <list>
                    
    <value>logBeforeAdvice</value>
                    
    <value>logAfterAdvice</value>
                    
    <value>logRoundAdvice</value>
                    
    <value>throwAdvice</value>
                
    </list>
            
    </property>
        
    </bean>
    </beans>
    Demo:
    package com.hwp.aop.adviceDemo;

    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;

    public class SpringAOPDemo {
        
    public static void main(String[] args){
            ApplicationContext context 
    = 
                
    new ClassPathXmlApplicationContext("beans-beforeAdvice.xml");
            IHello helloProxy 
    = (IHello) context.getBean("helloProxy");
            
    try{
                helloProxy.hello(
    "惠萬鵬");
            }
    catch(Exception e){
                
    //e.printStackTrace();
            }

        }

    }

    收工....

    posted on 2008-04-13 14:37 HUIKK 閱讀(947) 評(píng)論(0)  編輯  收藏 所屬分類: Spring
    主站蜘蛛池模板: 一二三四在线观看免费中文在线观看 | 亚洲视频在线观看网站| 在线观看永久免费视频网站| 一级毛片免费不卡在线| 青青青视频免费观看| 亚洲1234区乱码| 亚洲综合久久综合激情久久| 亚洲?v无码国产在丝袜线观看| 日韩吃奶摸下AA片免费观看| 免费人成视频在线观看网站| 两性色午夜免费视频| 美女视频黄a视频全免费网站色| 亚洲色精品三区二区一区| 亚洲国产中文在线二区三区免| 亚洲阿v天堂在线| 亚洲一区二区三区无码影院| 国产精品免费视频一区| 国内免费高清在线观看| 69av免费观看| 95老司机免费福利| 无码人妻一区二区三区免费看| 免费无码又爽又刺激一高潮| 国产精品免费大片一区二区| 国产亚洲蜜芽精品久久| 亚洲av无码一区二区三区人妖 | 在线播放免费人成视频在线观看| 每天更新的免费av片在线观看 | 亚洲国产美女福利直播秀一区二区 | 亚洲国产精品日韩av不卡在线| ASS亚洲熟妇毛茸茸PICS| 亚洲av无码不卡久久| 亚洲人成在线中文字幕| 精品亚洲国产成人| 亚洲а∨天堂久久精品9966| 亚洲一卡2卡3卡4卡乱码 在线| 亚洲影院天堂中文av色| 国产亚洲中文日本不卡二区| 亚洲成熟丰满熟妇高潮XXXXX| 亚洲av永久无码精品秋霞电影秋| 亚洲AV无码国产剧情| 国产精品亚洲精品日韩动图|