首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

IOC器皿——依赖

2013-01-27 
IOC容器——依赖控制反转就是由容器来控制bean之间的依赖关系。?依赖注入spring容器注入方式主要有两种,一种

IOC容器——依赖

控制反转就是由容器来控制bean之间的依赖关系。

?

依赖注入

spring容器注入方式主要有两种,一种是构造方法注入,另外一种是setter注入。

?

1.构造方法注入

?

构造方法注入有三种构造方法属性匹配方式,一种是通过类型匹配,一种是通过索引匹配,另外一种是通过名称匹配(只适用于Spring3.0以上)。

?

2.setter注入

?

setter注入需要无参的构造方法或者无参的静态工厂方法,还需要有set方法。

?

3.构造方法注入还是setter注入?

?

一般推荐是使用setter注入,因为当使用构造方法注入的时候,如果构造方法的参数太多,就会造成代码的可读性差,而且要为每个参数赋值。当某些属性可选的时候,选择setter注入是一种很好的选择。

?

depends-on和继承

当配置存在重复的时候,就可以定义一个bean为抽象(abstract),另外一个bean继承该bean(parent),来使用重复的配置。

而当一个bean实例化之前,需要在一个或者多个bean实例化之后,就可以用depends-on属性来指定需要预先实例化的那些bean。

?

?Lazy-initialized beans

ApplicationContext实现的默认行为就是在启动时将所有singleton bean提前进行实例化。有时候这种默认处理可能并不是你想要的。在XML配置文件中,延迟初始化将通过<bean/>元素中的lazy-init属性来进行控制。在容器层次上通过在<beans/>元素上使用default-lazy-init属性来控制延迟初始化也是可能的。

?

自动装配

自动装配的方便之处在减少或者消除属性或构造器参数的设置。主要是有byName,byType,constructor,autodetect。

?

?

热点排行