佳丽斯 加厚双人/单人秋冬被子暖冬 羊毛被芯羊毛柔丝被特价包邮 忧忧鱼冬外穿打底裤女秋冬厚长裤女裤加绒加厚高腰弹力铅笔裤靴裤 韩国代购2013新款 韩版秋冬休闲女时尚磨破口袋卫衣韩版学生装 潮

有时,退一步,能一口气进几步,只是这先退一步需要勇气和自信。

用心爱你,努力工作。

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  70 随笔 :: 1 文章 :: 33 评论 :: 0 Trackbacks
上一笔记,介绍了代理机制,这一节介绍Spring是如何实现代理。
通过一个例子来说明。
包下载地址:
http://www.ziddu.com/download/3555992/SpringAndaop.rar.html

(1)创建LogBeforeAdvice类(实现MethodBeforeAdvice接口,会在目标对象的方法执行之前被呼叫)

package com.proxy;

import java.lang.reflect.*;
import java.util.logging.Logger;
import java.util.logging.Level;
import org.springframework.aop.MethodBeforeAdvice;;

public class LogBeforeAdvice  implements MethodBeforeAdvice{

 private Logger logger=Logger.getLogger(this.getClass().getName());
 public void before(Method method,Object[] args,Object target) throws Throwable
 {
  logger.log(Level.INFO,"mehtod starts "+method);
 }
}


(2)创建配置文件advice-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

<beans>
 <bean id="logBeforeAdvice" class="com.proxy.LogBeforeAdvice" />
 <bean id="helloSpeaker" class="com.proxy.HelloSpeaker" />
 
 <bean id="helloProxy"
  class="org.springframework.aop.framework.ProxyFactoryBean"><!--建立代理对象-->
  <property name="proxyInterfaces"><!--代理接口-->
   <value>com.proxy.IHello</value>
  </property>
  <property name="target"><!--代理目标-->
   <ref bean="helloSpeaker" />
  </property>
  <property name="interceptorNames"><!--代理实现类-->
   <list>
    <value>logBeforeAdvice</value>
   </list>
  </property>
 </bean>
 
</beans>
(3)测试类SpringAOPDemo

package com.proxy;

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

public class SpringAOPDemo {
 public static void main(String[] args)
 {
  //读取配置文件
  ApplicationContext context=new FileSystemXmlApplicationContext("advice-config.xml");
  IHello helloProxy=(IHello)context.getBean("helloProxy");
  helloProxy.hello("ducklyl");
  
 }
}

运行测试类,结果如下:
Hello,ducklyl

posted on 2007-10-28 17:47 王生生 阅读(977) 评论(1)  编辑  收藏 所属分类: Spring

评论

# re: Spring学习笔记 2007-10-28 Spring实现代理机制 2008-05-15 15:13 ducklyl
up  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问  
 
森露2013新款豹纹打底衫 高领 女 长袖 修身长袖t恤女 加绒加厚冬 2013春秋新款女装 潮修身大码长袖小西装外套女 韩版中长款小西装 忧忧鱼2013秋冬新款直筒裤女显瘦长裤加绒黑色休闲裤修身西裤女裤