Spring入门基础之依赖注入

一、构造器注入

在前几节已经做过了详细的说明讲解,我们先跳过

二、set注入

依赖注入

依赖: bean对象的创建以及管理都依赖于Spring IOC容器

注入: bean对象中的所有属性,都有容器进行注入

在前面我们已经见识过了 普通类型注入和 bean注入的方式,那么对于复杂类型List、数组类型、Map、Set属性等怎么进行注入呢?

我们先提供一个包含各种类型的实体类

Student 类

package com.kuang.pojo;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Set;
@Setter
@Getter
@ToString
public class Student {
    private String name;
    private Address address;
    private String[] books;
    private List hobbies;
    private Map card;
    private Set games;
    private String wife;
    private Properties info;
}

Student类中包含的 Address类

package com.kuang.pojo;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@ToString
public class Address {
    private String address;
}

(1)基本类型注入


        

(2)引用类型(bean)注入

    
    

        
    

(3)数组类型注入


        
            
                红楼梦
                水浒传
                西游记
                三国演义
            
        

property 嵌套 array标签 ,array标签中又 通过 value标签设置 数组中的值

(4)List类型注入


        
            
                打篮球
                弹吉他
                踢足球
            
        

property 嵌套 list标签 ,list标签中又 通过 value标签设置 list中的值

(5)null 空值注入


        
            
        

property 嵌套 null标签,给指定属性设置为null

(6)Map 类型注入


        
            
                
                
            
        

property 嵌套 map标签 ,map标签中又 通过 entry标签设置 key、value中的值

(7)Set 类型注入


        
            
                塞尔达
                马里奥
            
        

property 嵌套 set标签 ,set标签中又 通过value标签设置set中的值

(8)Properties 类型注入


        
            
                111
                root
                22222
            
        

property 嵌套 props标签 , props标签中又 通过prop标签设置值

查看注入之后的结果,正确拿到结果

三、其他方式注入

(1)导入约束

其他拓展的注入有p命名注入和c命名注入,但是不能直接使用都需要引入xml约束

p命名空间注入xml约束

       xmlns:p="http://www.springframework.org/schema/p"

c命名空间xml约束

       xmlns:c="http://www.springframework.org/schema/c"

p命名和c命名是对注入方式的一种格式化

  • p命名对应着 property 属性注入
  • c命名对应着 construct-arg 构造参数注入

(2)p命名注入

    
    

(3)c命名注入

    
    

到此这篇关于Spring入门基础之依赖注入的文章就介绍到这了,更多相关Spring依赖注入内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(Spring入门基础之依赖注入)