对依赖注入技术的初学指导
2008-09-20 13:26:20 来源:WEB开发网容器的初始化
容器的初始化通常需要对xml文件的引用和对bean工厂的实例化。
ClassPathResource res = new ClassPathResource("spring-beans.xml");
BeanFactory factory = new XmlBeanFactory(res);
依赖性的解决方案
调出对服务端组件的引用是基于定义在xml文件里的‘id’,而不是接口类。同样地,所有的服务组件按照准确的次序隐性地实例化,setters得以调用来解决依赖性问题。
factory.getBean("TripPlanner");
XWork实施
XWork其实是有一定DI功能的命令行模式的框架。它可能是在所有DI框架中最不成熟的了。但是,我发现如果你已经决定使用
webwork,特别是你要把依赖性注入到操作类中去的时候,XWork是一个很有用的框架。
XML声明
<components>
<component>
<scope>application</scope>
<class>com.dnene.ditutorial.common.impl.SimpleAirlineAgency</class>
<enabler>com.dnene.ditutorial.xwork.AirlineAgencyAware</enabler>
</component>
<component>
<scope>application</scope>
<class>com.dnene.ditutorial.common.impl.SetterBasedCabAgency</class>
<enabler>com.dnene.ditutorial.xwork.CabAgencyAware</enabler>
</component>
<component>
<scope>application</scope>
<class>com.dnene.ditutorial.common.impl.SetterBasedTripPlanner</class>
<enabler>com.dnene.ditutorial.xwork.TripPlannerAware</enabler>
</component>
</components>
更多精彩
赞助商链接