您的位置:首页 > 编程语言 > Java开发

[maven + spring]SpringInAction方法替换

2014-03-28 16:00 330 查看

[align=center][color=violet][size=x-large]Spring 方法替换例子[/size][/color][/align]
1.sec3.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"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-4.0.xsd">
<bean id="tigerReplacer" class="com.lh.springtest02.section3.TigerReplacer" />
<bean id="magicbox" class="com.lh.springtest02.section3.MagicBoxImpl">
<replaced-method name="getContents" replacer="tigerReplacer"/>
</bean>
<bean id="harry" class="com.lh.springtest02.section3.Magician">
<property name="magicWords" value="Bippity boppity boo" />
<property name="magicBox" ref="magicbox" />
</bean>
</beans>

2.替换方法实现

import java.lang.reflect.Method;
import org.springframework.beans.factory.support.MethodReplacer;
public class TigerReplacer implements MethodReplacer{
public Object reimplement(Object obj, Method method, Object[] args)
throws Throwable {
return "A ferocious tiger";
}
}

3.MagicBoxImpl.java

public class MagicBoxImpl implements MagicBox{
public MagicBoxImpl() {
}
public String getContents() {
return "A Beautiful assistant";
}
}

4.Magician.java

public class Magician implements Performer{
private MagicBox magicBox;
private String magicWords;
public void perform() {
System.out.println(magicWords);
System.out.println("The magic box contains ...");
System.out.println(magicBox.getContents());
}
public void setMagicBox(MagicBox magicBox) {
this.magicBox = magicBox;
}
public void setMagicWords(String magicWords) {
this.magicWords = magicWords;
}
}

5.Bean测试

ApplicationContext ac = new ClassPathXmlApplicationContext("section3/sec3.xml");
Magician mc = (Magician)ac.getBean("harry");
mc.perform();

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐