spring替代方法
2016-02-14 20:01
706 查看
总结spring替代方法的使用
MyValueCalculator类中的computerValue方法将会被替代
替代类实现接口MethodReplacer
bean配置
总结:这样就可以将computeValue方法交给类ReplacementComputeValue来完成。这是一种动态代理模式。由此想到了mybatis通过使用动态代理将自定义的dao接口的实现通过代理方法实现。
MyValueCalculator类中的computerValue方法将会被替代
public class MyValueCalculator { public String computeValue(String input) { // some real code... } // some other methods... }
替代类实现接口MethodReplacer
/** * meant to be used to override the existing computeValue(String) * implementation in MyValueCalculator */ public class ReplacementComputeValue implements MethodReplacer { public Object reimplement(Object o, Method m, Object[] args) throws Throwable { // get the input value, work with it, and return a computed result String input = (String) args[0]; ... return ...; } }
bean配置
<bean id="myValueCalculator" class="x.y.z.MyValueCalculator"> <!-- arbitrary method replacement --> <replaced-method name="computeValue" replacer="replacementComputeValue"> <arg-type>String</arg-type> </replaced-method> </bean> <bean id="replacementComputeValue" class="a.b.c.ReplacementComputeValue"/>
总结:这样就可以将computeValue方法交给类ReplacementComputeValue来完成。这是一种动态代理模式。由此想到了mybatis通过使用动态代理将自定义的dao接口的实现通过代理方法实现。
相关文章推荐
- spring 方法注入
- Java基础——I/O续
- spring中scope(作用越)理解
- Java认证考试实例疑难辨析(8)
- spring和Hibernate 整合
- Swagger 与 SpringMVC 整合的步骤
- springmvc学习笔记--json--返回json的日期格式问题
- Java中Iterator迭代器设计原理
- 使用spring aop实现业务层mysql 读写分离
- [Dubbo实战]dubbo + zookeeper + spring 实战 (转)
- 配置java环境变量
- [014]Java设计模式1——观察者模式
- Eclipse快捷键1
- 【Dubbo实战】 Dubbo+Zookeeper+Spring整合应用篇-Dubbo基于Zookeeper实现分布式服务(转)
- java中unicode和中文相互转换
- java语法基础
- struts2拦截器配置详解
- JVM 内存基础概念之 Java 堆
- Java类初始化和实例化中的2个“雷区”
- zookeeper学习-2(如何使用zookeeper进行配置管理-java版本)