Spring自动装配

来源:互联网 发布:mac os 10.12.6怎么样 编辑:程序博客网 时间:2024/05/29 10:13

1、基本装配

声明bean的方式为通过<bean>元素来声明bean和xml配置文件中的<constractor-arg>和<property>元素来注入bean,其实spring容器可以在不使用注入和<bean>元素的情况下自动装配相互协作的bea之间的关系,这有助于减少编写一个大的spring的应用程序的xml配置的数量

2、自动装配模式

用于指示spring容器为来使用自动装配进行依赖注入。使用<bean>元素的autowire属性为一个bean定义指定自动装配模式

5种自动装配模式

①No:默认的设置,意味着没有自动装配

②byName:自动装配的属性值设置为byName,然后尝试匹配,并且将它的属性与在配置文件中被定义为相同名称的bean的属性进行连接

③byType:根据属性数据类型自动装配,spring容器看到在xml配置文件中bean的自动装配的属性,设为byType。然后如果他的类型匹配配置文件中的一个确切的bean名称,它将会尝试匹配和连接属性的类型。如果存在不止一个这样的bean,则一个致命的异常将会抛出。

④Constractor:类似于byType,但该类型适用于构造函数类型,如果在容器中没有一个构造函数参数类型的bean,则一个致命的错误将会发生。

⑤autodetect:spring首先尝试通过constractor使用自动装配来连接,如果它不执行,spring尝试通过byType来自动装配。

3、自动装配的局限性

①重写的可能性:可以使用总是重写自动装配的<constractor-arg>和<property>设置来指定依赖关系

②原始数据类型:不能自动装配所谓的简单类型包括基本类型

③混乱的本质:自动装配不如显示装配精确,所以可能的话尽量使用显示装配


原创粉丝点击