Spring MVC中如何使用IoC和DI

问题描述 投票:0回答:1

我正在学习有关Spring Hibernate等的所有课程,该课程首先讲解了如何从Web角度介绍控制注入和依赖项注入的工作原理,就像在简单的类或bean,在config xml中定义bean及其依赖关系一样。文件或在实际类中使用Java批注,然后在其中创建Bean的主类。我了解到,尽管除了分离创建和维护对象以及添加对象所需的依赖等角色之外,并没有真正看到使用IoC和DI的巨大好处,而且我猜想当项目更大时,这将使它变得更干净,更容易使用,对吗?

但是我不了解IOC和DI在整个春季MVC项目中如何联系。就像我理解的那样,使用@Controller批注意味着它就像@Component一样,您可以使其在创建bean时自动扫描组件,但与之前没有创建和配置bean的主类相反,我有一个控制器类在这里,我手动创建对象和模型,并将其传递回视图,以便在其中使用模型中的值。我在这里看不到如何使用IoC或DI?还是因为这是一个简单的项目,也许我们创建的对象没有太多依赖关系?还是很多使用和实现都在内部或自动完成?

[我只是在努力a)看看为什么IoC和DI如此重要,b)在没有主类创建bean的Spring MVC项目中它们如何实际使用?

java spring spring-mvc dependency-injection inversion-of-control
1个回答
0
投票

A)创建一个项目,但不要添加任何依赖项(或web-mvc)。然后自己动手,然后查看需要多少时间来手动创建配置。如果这只是一个简单的mvc项目,则可以手动进行,但是如果您的项目日趋增加,则需要一个庞大的配置文件来正确维护您的项目。但是,当您是专业开发人员时,您没有太多时间手动配置所有这些。因此,这里是解决方案IoC和DI。控制器或其他注释在内置jar中配置。您不必担心创建控制器或创建bean,只需在需要它们时使用它们。它可以节省您的时间,也可以让您头痛不已。在进行大型项目时,可以提高工作效率。

B]是的,Web项目中没有主类。要运行Web项目,您需要一台服务器。服务器首先寻找配置(在春季,它是web.xmldispatcher-servlet)。如果可用,则展开配置文件,否则,将引发错误。在该配置文件中,说明有关Web项目的所有内容。应该做什么,什么不是强制性的,什么是切入点等。

因此,IoC和DI非常重要,因为要了解Web项目在后台如何工作或所有组件如何一起工作。

© www.soinside.com 2019 - 2024. All rights reserved.