【发布时间】:2013-04-26 23:32:04
【问题描述】:
Spring的自动装配到底有什么优势?
春天自动装配的一个例子是
public class TestClass {
testMethod() {
// .....
};
}
public class MainClass {
public static void main(String[] args) {
ApplicationContext ctx = new ClasspathXmlApplicationContext("test.xml");
TestMethod obj = (TestClass) ctx.getBean("test");
obj.testMethod();
}
}
test.xml
<bean id="test" class="TestClass">
在正常操作中也可以使用:
public class MainClass {
public static void main(String[] args) {
TestClass obj = new TestClass();
obj.testMethod();
}
}
Spring 的优势是什么,我的意思是我听说过控制反转和依赖注入这两个术语。
在这两个示例中,TestClass 的引用通过 Spring XML 再次通过 new oerator 使用。那么有人可以简单地解释一下优势是什么。
【问题讨论】:
-
如果你的应用程序由一个类和一个方法组成,依赖注入是没有用的,因为你有 0 个依赖注入。当您的组件依赖于其他组件,依赖于其他组件时,它会变得很有用。就像在典型的 Web 应用程序中一样,UI 控制器依赖于业务服务,而业务服务又依赖于其他服务和 DAO。
标签: spring dependency-injection inversion-of-control autowired