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

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

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

    posts - 66,  comments - 11,  trackbacks - 0
    當我們有很多類需要通知時,顯示的創建每個代理就會顯得很笨拙。幸運的是,Spring有一個自動代理機制,它可以讓容器為我們產生代理。Spring有2個類提供這種服務:BeanNameAutoProxyCreate和DefaultAdvisorAutoProxyCreator.

    BeanNameAutoProxyCreate:為匹配一系列名字的Bean自動創建代理。它也允許在名字的2端進行通配符的匹配。
    <?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="performanceThresholdInterceptor" class="com.wyq.spring.common.aopinstance.autoproxy.PerformanceThresholdInterceptor">
            
    <constructor-arg>
                
    <value>5000</value>
            
    </constructor-arg>
        
    </bean>
        
    <!-- 
            如果Bean是一個Advisor或攔截器,它將應用到代理對象的所有方法上。如果是通知的話,Advisor切入點
            會根據不同Bean將通知應用到不同的地方。
         
    -->
        
    <bean id="performanceThresholdProxyCreator" class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
            
    <property name="beanNames">
                
    <list>
                    
    <value>*Service</value>
                
    </list>
            
    </property>
            
    <property name="interceptorNames">
                
    <value>performanceThresholdInterceptor</value>
            
    </property>
        
    </bean>
    </beans>
    更強大的自動代理創建器是DefaultAdvisorAutoProxyCreator.當ApplicationContext讀入所有Bean的配置信息后,DefaultAdvisorAutoProxyCreator將掃描上下文,尋找所有的Advisor.它將這些Advisor應用到所有符合Advisor切入點的Bean中。
    <?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="performanceThresholdInterceptor" class="com.wyq.spring.common.aopinstance.autoproxy.PerformanceThresholdInterceptor">
            
    <constructor-arg>
                
    <value>5000</value>
            
    </constructor-arg>
        
    </bean>
        
    <!-- 
            一個Advisor是一個切入點和一個通知的結合體。不用顯示的將Advisor與其他東西結合,現在只要簡單的定義他們,然后讓他們自動
            應用到他們匹配的地方。這樣松耦合Bean以及他們的通知就實現了。你只管寫好你的Bean,寫好你的通知,讓容器來充當媒婆。
         
    -->
        
    <bean id="advisor" class="org.springframework.aop.support.RegexpMethodPointcutAdvisor">
            
    <property name="advice">
                
    <bean class="com.wyq.spring.common.aopinstance.autoproxy.PerformanceThresholdInterceptor"></bean>
            
    </property>
            
    <property name="pattern">
                
    <value>.+Service\..+</value>
            
    </property>
        
    </bean>
        
    <bean id="autoProxyCreator" class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator">
        
    </bean>
    </beans>

    posted on 2009-11-06 16:00 王永慶 閱讀(257) 評論(0)  編輯  收藏 所屬分類: SPRING
    <2009年11月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    293012345

    常用鏈接

    留言簿(1)

    隨筆分類

    隨筆檔案

    關注blogs

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 日本人护士免费xxxx视频| 亚洲精品中文字幕无码蜜桃| 国产精品亚洲一区二区无码| 亚洲三级电影网址| 尤物视频在线免费观看| 亚洲精品国产精品乱码视色| 91精品视频免费| 一区二区免费在线观看| 亚洲欧洲日产国码www| 四虎影视永久免费观看网址| 亚洲av无码一区二区三区四区| 亚洲日韩国产精品乱| 羞羞视频免费网站在线看| 亚洲妇女水蜜桃av网网站| 亚洲国产精品无码久久九九| 免费人成大片在线观看播放电影| 国产精品深夜福利免费观看| 成人网站免费看黄A站视频| 久久青草亚洲AV无码麻豆| 免费91麻豆精品国产自产在线观看 | 曰批全过程免费视频在线观看无码| 亚洲综合久久一本伊伊区| 色噜噜AV亚洲色一区二区| 女人18毛片水最多免费观看| 成全视频免费观看在线看| 国产偷国产偷亚洲高清在线| 亚洲国产精品免费在线观看| 国产a v无码专区亚洲av| 成年女人18级毛片毛片免费 | 久久久久免费看成人影片| 亚洲国产精品无码久久久秋霞2| 影音先锋在线免费观看| 久久久久久国产精品免费免费男同| 亚洲激情在线视频| 亚洲欧洲中文日韩av乱码| 扒开双腿猛进入爽爽免费视频 | 岛国av无码免费无禁网站| 免费A级毛片在线播放| 成人毛片100免费观看| 亚洲嫩模在线观看| 亚洲国产无套无码av电影|