Spring接口动态注入不同的实现类
2012-11-11 15:45
489 查看
场景:程序中有一接口,需要在运行中根据某个参数的值动态地给它注入不同的实现类。
实现代码:
实现代码:
//读物接口 interface IReader{ public String getContent(); } //书本 class Book implements IReader{ public String getContent(){ System.out.println("Reading Book!"); } } //报纸 class Newspaper implements IReader{ public String getContent(){ System.out.println("Reading Newspaper!"); } } //业务类 class Reader{ Map<String,IReader> map = new HashMap<String,IReader>(); public void read(String type){ IReader irer = map.get(type); irer.getContent(); } } //xml配置文件 <bean name="reader" class="net.test.Reader"> <property name="map"> <map> <entry key="book"><bean class="net.test.Book"/></entry> <entry key="newspaper"><bean class="net.test.Newspaper"/></entry> </map> </property> </bean> //调用类 class TestRead{ public static void main(String[] args){ Reader reader = new Reader(); reader.read("book"); reader.read("newspaper"); } }
相关文章推荐
- Spring的注解@Qualifier小结:一个接口有两个实现类,spring注入时报错
- Spring使用注解注入接口实现类
- Spring2.5学习4.2_Proxy实现动态代理(目标类实现任意接口)
- Spring的AOP实现使用的JDK的动态代理必须使用接口
- spring 注入@Autowired @Qualifier 一个接口多个实现类
- spring接口实现类 依赖注入
- IOC,依赖倒置 (理解) Spring依赖注入的实现技术是:动态代理
- .Net Core 通过依赖注入和动态加载程序集实现宿主程序和接口实现类库完全解构
- spring容器注入一个接口的两个实现类
- 在.NET Core中处理一个接口多个不同实现的依赖注入问题
- Spring之AOP的实现(JDK动态代理:只能代理接口,不能代理类)
- 在.NET Core中处理一个接口多个不同实现的依赖注入问题
- spring为何要注入接口,而注入接口的实现类就会报错
- IOC,依赖倒置 (理解) Spring依赖注入的实现技术是:动态代理
- 详解Spring中实现接口动态的解决方法
- spring中,一个接口两个实现类,注入问题
- spring注解方式自动注入接口的实现子类
- Spring注解注入接口的实现类
- 通过字符创调用接口中实现类的方法,SpringBean自动注入,
- spring测试junit事务管理及spring面向接口注入和实现类单独注入(无实现接口),实现类实现接口而实现类单独注入否则会报错。