什么是Spring Framework中的自动装配和AOP?

时间:2016-04-17 20:01:09

标签: spring

我想了解术语" autowiring"的确切含义是什么?和Spring框架中的AOP。

2 个答案:

答案 0 :(得分:1)

来自官方Spring Framework Reference

  

Spring容器可以自动协调协作之间的关系   豆子。您可以允许Spring解析协作者(其他bean)   通过检查内容来自动为您的bean   ApplicationContext中。

这基本上意味着你可以将它留给Spring Framework来初始化你的bean并确保它们在你需要它们的时候就可以了。例如,假设我的应用中有一些Thing s。现在,如果我想获取所有Thing并将它们放在List<Thing>中,在Spring中(假设我已正确配置它),我可以简单地使用此代码:

@Autowired
private List<Thing> things;

我没有额外的努力,我有我需要的清单。

关于面向方面编程(AOP)的问题,因为它与Spring有关,在帖子中会有相当多的内容。官方Spring Framework Reference中可以看到简单的解释:

  

面向方面编程(AOP)补充了面向对象   编程(OOP)通过提供另一种思考程序的方式   结构体。 OOP中模块化的关键单位是类,而在   AOP模块化的单位是方面。方面使   关注的模块化,例如交易管理削减   跨多个类型和对象。 (这种担忧通常被称为   AOP文献中的横切关注点。)

     

Spring的一个关键组件是AOP框架。虽然   Spring IoC容器不依赖于AOP,这意味着您不需要   如果您不想使用AOP,AOP将补充Spring IoC提供   一个非常有能力的中间件解决方案。

如果您对AOP感兴趣,该部分非常详细,值得一读。

答案 1 :(得分:0)

自动装配是一种根据Spring Reference解决Spring IoC容器中的依赖关系的机制。因此,您可以依赖容器本身来为您提供候选项,而不是直接指定依赖项(在XML或Java配置中)。如果你找到多个匹配的依赖项,Spring本身应该中止(除非你正在寻找一组bean)。