日期:2014-05-17  浏览次数:20587 次

这种获取service的方式,叫什么开发模式??????????????????
是工厂模式还是代理模式??????????????????


Java code

ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext*");
TestService testService = (TestService)context.getBean("testService");
testService.test("xxxxxxxxxxxxx");



------解决方案--------------------
工厂模式。
代理的话你就不应该看见是哪个具体的服务如:TestService去帮你处理的。
------解决方案--------------------
ioc 注入吧 从工厂中得到bean
------解决方案--------------------
其实工厂的话就应该提出一个借口,你强制类型转换成具体TestService也是市区工厂的意义了。
InterFaceService testService = context.getBean("testService");
InterFaceService testService = context.getBean("mainService");
InterFaceService testService = context.getBean("AService");
工厂应该产生这样的代码。
以上纯个人意见。



------解决方案--------------------
其实工厂的话就应该提出一个借口,你强制类型转换成具体TestService也是市区工厂的意义了。
InterFaceService testService = context.getBean("testService");
InterFaceService testService = context.getBean("mainService");
InterFaceService testService = context.getBean("AService");
工厂应该产生这样的代码。
以上纯个人意见。



------解决方案--------------------
赋值给接口就是代理模式,赋值给类就是工厂模式