ssm学习笔记——spring——IoC依赖注入

spring中的依赖注入

   依赖注入:
           Dependency Injection
   IoC作用的作用:
           降低程序间的耦合(依赖关系)
   依赖关系的管理都交给了spring来维护
   在当前类需要用到其他类的对象,由spring为我们提供,我们只需要在配置文件中说明
   依赖关系的维护就称之为依赖注入
   依赖注入数据有三类:
           基本类型和String
           其他bean类型(在配置文件中或者注解配置过的bean
           复杂类型/集合类型
   注入方式有三种:
           使用构造函数提供
           使用set方法提供
           使用注解提供
构造函数注入
    使用的标签:constructor-arg
    标签中的属性
        type:用于指定要注入数据的数据类型,该数据类型也是构造函数中某个或某些参数的类型
        index:用于指定要注入数据给构造函数中指定索引未知的参数赋值,位置从0开始
        name:用于指定给构造函数中指定名称的参数赋值(常用)
        value:用于提供基本类型和String类型的数据
        ref:用于指定其他的bean类型数据,指在springIoC核心容器中出现过的bean对象
    优势:
        在获取bean对象时,注入数据是必须的操作,否则对象无法创建成功
    弊端;
        改变了bean对象的实例化方式,使我们在创建对象时,如果用不到这些数据也必须提供
set方法注入(常用)
    使用的标签:property
    出现的位置:bean标签的内部
    标签中的属性
        name:用于指定注入时所调用的set方法名称
        value:用于提供基本类型和String类型的数据
        ref:用于指定其他的bean类型数据,指在springIoC核心容器中出现过的bean对象
    优势:
        创建对象是没有明确的限制,可以直接使用默认构造函数
    弊端:
        如果某个成员必须有值,则获取对象时有可能set方法没有执行
复杂类型的注入
    用于给List结构集合注入的标签;
        list array set
    用于给Map结构集合注入的标签:
        map props
    结果相同,标签可以互换

你可能感兴趣的:(java,spring,ioc)