Spring配合接口实现解耦原理
来源:互联网 发布:恐怖小说 知乎 编辑:程序博客网 时间:2024/06/08 15:06
一个简单的接口:
public interface ChangLetter {
public String change();
}
两个实现:
package com.pas.service;
import com.inter.ChangLetter;
public class LowLetter implements ChangLetter {
private String str;
@Override
public String change() {
// 大写-》小写
return str.toLowerCase();
}
public String getStr() {
return str;
}
public void setStr(String str) {
this.str = str;
}
}
package com.pas.service;
import com.inter.ChangLetter;
public class UpLetter implements ChangLetter {
private String str;
@Override
public String change() {
// 小写-》大写
return str.toUpperCase();
}
public String getStr() {
return str;
}
public void setStr(String str) {
this.str = str;
}
}
spring配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<beans 'dtd'>
<!--<bean id="changeLetter" class="com.pas.service.UpLetter">
<property name="str" value="abcdefg" />
</bean> -->
<bean id="changeLetter" class="com.pas.service.LowLetter"> <property
name="str" value="ABCDEFG" /> </bean>
</beans>
使用模拟view:
public class Test {
public static void main(String[] args) {
ApplicationContext ac= new ClassPathXmlApplicationContext("com/pas/service/beans.xml");
ChangLetter change= (ChangLetter) ac.getBean("changeLetter");
System.out.println(change.change());
}
}
重新配置Spring配置文件 代码无需更改
public interface ChangLetter {
public String change();
}
两个实现:
package com.pas.service;
import com.inter.ChangLetter;
public class LowLetter implements ChangLetter {
private String str;
@Override
public String change() {
// 大写-》小写
return str.toLowerCase();
}
public String getStr() {
return str;
}
public void setStr(String str) {
this.str = str;
}
}
package com.pas.service;
import com.inter.ChangLetter;
public class UpLetter implements ChangLetter {
private String str;
@Override
public String change() {
// 小写-》大写
return str.toUpperCase();
}
public String getStr() {
return str;
}
public void setStr(String str) {
this.str = str;
}
}
spring配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<beans 'dtd'>
<!--<bean id="changeLetter" class="com.pas.service.UpLetter">
<property name="str" value="abcdefg" />
</bean> -->
<bean id="changeLetter" class="com.pas.service.LowLetter"> <property
name="str" value="ABCDEFG" /> </bean>
</beans>
使用模拟view:
public class Test {
public static void main(String[] args) {
ApplicationContext ac= new ClassPathXmlApplicationContext("com/pas/service/beans.xml");
ChangLetter change= (ChangLetter) ac.getBean("changeLetter");
System.out.println(change.change());
}
}
重新配置Spring配置文件 代码无需更改
0 0
- Spring配合接口实现解耦原理
- Spring 装载接口实现类原理
- Spring中DI配合接口编程
- spring的DI配合接口编程
- Spring和Quartz配合实现定时任务
- Spring和Quartz配合实现定时任务
- spring boot 配合前端实现跨域
- ajax配合spring实现文件上传
- Spring依赖注入与配合接口编程案例
- spring实现接口加密
- spring为什么实现接口?
- Spring+Struts2+JQuery配合实现简单的登录功能
- Spring中的@ControllerAdvice注解配合@ExceptionHandler使用实现异常处理
- Spring中@ControllerAdvice注解配合@ExceptionHandler实现统一异常处理
- 【Spring】Spring AOP实现原理
- spring mvc 实现原理
- spring AOP实现原理
- Spring实现原理
- poj3921.Destroying the bus stations( 迭代加深搜索 && BFS )
- Java中的private、protected、public和default的区别
- Android Studio + Genymotion安卓模拟器打造高效安卓开发环境
- lintcode 木材加工
- startActivityForResult和setResult
- Spring配合接口实现解耦原理
- Android GPS学习笔记(1)—系统架构
- no projects are available for deployment to this server
- iOS第三方框架---AFNetWorking详解
- 十二、中国股市的特点
- OC基础知识 -- 常见类的一些方法
- overflow属性(实现超出边框点的部分隐藏)
- ERROR与EXCEPTION的区别
- Android GPS学习笔记(3)—JNI层实现