技术文章 >  头条 > 正文

java中spring ioc有几种注入?

小妮浅浅

我们使用java进行开发时,会在spring容器中看到IOC。很多人对这种方法不是很了解,那我们就简单来说明一下,其实它相当于一个工具,把做好的成果交由spring,而不是自己保留。接下来我们对spring ioc展开具体的概念介绍,然后就它的三种注入方式分别带来详解。

1、概念

spring ioc指的是控制反转,IOC容器负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。交由Spring容器统一进行管理,从而实现松耦合。在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在对象内部直接控制。

2、Setter方法注入

Setter方法注入是容器通过调用无参构造器或无参static工厂 方法实例化bean之后,调用该bean的setter方法,即实现了基于setter的依赖注入。

package com.jpeony.spring.setter;
 
import com.jpeony.spring.common.HelloServiceImpl;public class HelloWord {
 
private HelloService helloService;
 
  
 
    // setter方式注入Bean
 
    public void setHelloService(HelloService helloService) {
 
        this.helloService = helloService;
 
    }
 
  
 
    @Override
 
    public void selfIntroduction() {
 
        // 向大家打招呼
 
        helloService.sayHello("大家好!");
 
    }
 
  
 
}

2、构造方法注入

构造器依赖注入通过容器触发一个类的构造器来实现的,该类有一系列参数,每个参数代表一个对其他类的依赖。

package com.jpeony.spring.setter;
 
import com.jpeony.spring.common.HelloServiceImpl;
 
 
 
public class HelloWord {
 
    private HelloService helloService;
 
  
 
    // 构造方法注入
 
    public HelloWord (HelloService helloService) {
 
        this.helloService = helloService;
 
    }
 
  
 
}

3、P命名空间注入

package com.jpeony.spring.setter;
 
import com.jpeony.spring.common.HelloServiceImpl;
 
 
 
public class HelloWord {
 
    //名字
 
    private String name;
 
    //年龄
 
    private String age;
 
    //方法类
 
    private HelloService helloService;
 
  
 
    public void setName (String name) {
 
        this.name = name;
 
    }
 
     
 
    public void setAge (String age) {
 
        this.age = age;
 
    }
 
     
 
    public void setHelloService(HelloService helloService) {
 
        this.helloService = helloService;
 
    }
 
  
 
    @Override
 
    public void selfIntroduction() {
 
        // 向大家打招呼
 
        helloService.sayHello("我叫"+ name + ",今年" + age + "岁,大家好!");
 
    }
 
  
 
}

以上就是java中spring ioc的三种注入方式,大家在对这种容器有所了解后,可以分别尝试注入的方法,以便更好地理解spring ioc的使用。

免费视频教程
本教程部分素材来源于网络,版权问题联系站长!
相关文章
  java一维数组赋值的两种方法
  Java中Lock原理探究
  Java中锁有哪些面试题
  java中lock接口是什么
  java中lock获取锁的四种方法
  java数组中length的使用
相关视频章节
  索引和切片(上)
  数组创建和属性
  Python数据分析常用库
  高级函数(下
  高级函数(上)
作者信息
推荐视频
视频教程分类