spring控制反转接口编程:
首先编写接口interfere:ChangeLetter.java
package cn.hyl.hsp.inter;
public interface ChangeLetter {
public String change();
}
其次编写实现接口类:UpperLetter.java,LowwerLetter.java
package cn.hyl.hsp.inter;
public class UpperLetter implements ChangeLetter{
private String str;
@Override
public String change() {
return str.toLowerCase();
}
public String getStr() {
return str;
}
public void setStr(String str) {
this.str = str;
}
}
package cn.hyl.hsp.inter;
public class LowwerLetter implements ChangeLetter{
private String str;
@Override
public String change() {
return str.toUpperCase();
}
public String getStr() {
return str;
}
public void setStr(String str) {
this.str = str;
}
}
然后在beans.xml里配置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"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
<bean id="changeLetter" class="cn.hyl.hsp.inter.UpperLetter">
<property name="str" value="ABRTY" />
</bean>
</beans>
最后调用实现程序:
package cn.hyl.hsp.inter;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class App {
/**
* @param args
*/
public static void main(String[] args) {
ApplicationContext ac=new ClassPathXmlApplicationContext("cn/hyl/hsp/inter/beans.xml");
ChangeLetter changeLetter=(ChangeLetter) ac.getBean("changeLetter");
System.out.println(changeLetter.change());
}
}
总结:可以减少层(web层) 和业务层的耦合度.