`
messon619
  • 浏览: 45370 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Spring的三种依赖注入的方式

阅读更多
依赖注入有三种方式:
1接口注入:
接口注入的意思是通过接口来实现信息的注入,而其它的类要实现该接口时,就可以实现了注入:
下面是代码
Java 代码

   1. public interface Manager{ 
   2.  public void manage(Business business); 
   3. } 
   4.  
   5. public class xx { 
   6. private Business business; 
   7. public void manage(Business business){ 
   8. this.business = business; 
   9. } 
  10. } 

public interface Manager{
public void manage(Business business);
}

public class xx {
private Business business;
public void manage(Business business){
this.business = business;
}
}



2 Set注入:
通过set方法来注入
Java 代码

   1. public class xx { 
   2. private Manager manage; 
   3. public void setManager(Manager manage){ 
   4. this.manage= manage; 
   5. } 
   6. } 

public class xx {
private Manager manage;
public void setManager(Manager manage){
this.manage= manage;
}
}



3 构造注入:
通过构造函数来注入
Java 代码

   1. public class xx { 
   2. private Manager manage; 
   3. public xx(Manager manage){ 
   4. this.manage= manage; 
   5. } 
   6. } 

public class xx {
private Manager manage;
public xx(Manager manage){
this.manage= manage;
}
}


当然通过不同的注入方式,config.xml的配置是不同的。
通过构造函数进行的注入方式xml配置为
Java 代码

   1. <?xml version="1.0" encoding="UTF-8"?>   
   2. <!DOCTYPE beans Public "-//SPRING//DTD BEAN//EN"   
   3.  "http://www.springframework.org/dtd/spring-beans.dtd">   
   4. <beans>  <bean id="HelloWorld" class="com.jnotnull.HelloWorld"> 
   5.         <constructor-arg index="0"> 
   6.             <value>HelloWorld</value> 
   7.         </constructor-arg> 
   8.     </bean> 
   9. </beans> 

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE beans Public "-//SPRING//DTD BEAN//EN" 
"http://www.springframework.org/dtd/spring-beans.dtd"> 
<beans>  <bean id="HelloWorld" class="com.jnotnull.HelloWorld">
<constructor-arg index="0">
<value>HelloWorld</value>
</constructor-arg>
</bean>
</beans>


这里的contructor-arg,用来表示通过构造函数来注入,而index表示构造函数传递进来的第几个参数,在多参数的构造函数中,可以通过它来设立注入的变量。在这里的index="0"表示构造函数的第一个参数。同时我们还可以更改一下构造函数的个数和这里Index的个数,我们回发现很多的问题哦;

总结: 在既有构造器,又有Set 方法的前提下,Spring 优先考虑使用构造器注入.
分享到:
评论

相关推荐

    Spring 三种依赖注入方式.doc

    Spring 三种依赖注入方式 Spring 框架中提供了多种依赖注入方式,其中最常用的三种依赖注入方式分别是接口注入、设值注入和构造函数注入。下面,我们将分别对这三种依赖注入方式进行详细的介绍和分析。 一、接口...

    spring学习:依赖注入的几种方式讨论

    Spring Boot引入了一种更智能的依赖注入方式——自动配置。自动配置是通过`@EnableAutoConfiguration`注解启动的,它根据项目中的类路径和特定条件自动配置Bean。例如,如果类路径下存在`MongoClient`的jar,Spring ...

    Spring三种注入方式(三)

    除了以上三种方式,Spring还提供了基于注解的元数据注入,如`@Resource`、`@Qualifier`等,以及XML配置文件中的`&lt;bean&gt;`标签等方式进行依赖注入。在实际开发中,可以根据需求选择合适的方式,通常推荐使用构造器注入...

    spring依赖注入三种方式 测试源码

    通过阅读和理解这些源码,你可以更深入地了解Spring依赖注入的工作原理及其在项目中的具体使用。 在进行依赖注入时,Spring使用BeanFactory或ApplicationContext作为容器,负责创建、管理和装配Bean。容器读取配置...

    Spring Ioc 注解 依赖注入

    Spring IoC容器主要通过两种方式实现依赖注入: 1. **构造器注入**:通过类的构造方法来注入依赖项。 2. **设值注入**:通过setter方法来注入依赖项。 #### 四、使用注解进行依赖注入 随着Spring框架的发展,除了...

    Spring三种注入方式(一)

    在Spring框架中,依赖注入(Dependency Injection,简称DI)是一种重要的设计模式,它使得对象之间的耦合度降低,提高了代码的可测试性和可维护性。本篇主要介绍Spring中的三种注入方式,包括构造器注入、设值注入和...

    Spring依赖注入的方式

    总结,Spring的依赖注入提供了构造器注入、设值注入和接口注入三种方式,帮助开发者实现松耦合和高内聚的设计。根据项目需求和场景,选择合适的方式能有效提升代码质量。同时,结合源码阅读和使用工具,如IDEA的代码...

    Spring 控制反转 依赖注入

    在Spring中,有三种主要的依赖注入方式: 1. **构造器注入**:通过构造函数参数注入依赖。当对象被创建时,IoC容器会传递所需的依赖。 2. **setter注入**:使用setter方法注入依赖。容器会在对象创建后调用setter...

    spring依赖注入底层详解

    在Spring中,依赖注入可以通过构造器注入、设值注入和接口注入三种方式实现。 1. 构造器注入:通过在类的构造函数中传递依赖对象来完成注入。这种方式在创建对象时就确保了所有依赖都已就绪,适合于对象的依赖关系...

    Spring系列之依赖注入的三种方式.docx

    依赖注入的三种主要方式是:setter 方法注入、构造器注入以及字段注入。在本文中,我们将详细讨论前两种注入方式。 1. **使用属性的 setter 方法注入** 这是最常见也是最灵活的注入方式。setter 方法注入通过调用...

    spring依赖注入

    Spring依赖注入是Spring框架的核心特性之一,它使得对象之间的依赖关系得以解耦,增强了代码的可测试性和可维护性。依赖注入(Dependency Injection,简称DI)的理念是,一个对象不应该负责寻找并创建它所依赖的对象...

    spring四种依赖注入方式的详细介绍

    本文将详细讲解Spring框架中的四种依赖注入方式。 首先,我们来看Set注入,这是最常见和最简单的注入方式。在Java类中,我们定义一个需要依赖的私有成员变量,并提供一个对应的setter方法。例如,在`SpringAction`...

    第三章 Spring4 依赖注入

    在Spring框架中,依赖注入(Dependency Injection,简称DI)是一种核心的设计模式,它允许我们创建松耦合的代码,提高软件的可测试性和可维护性。Spring4版本进一步优化了这一特性,使其更加灵活和强大。本篇文章将...

    Spring三种注入方式(二)

    在Spring框架中,依赖注入(Dependency Injection,简称DI)是一种重要的设计模式,它使得对象之间的耦合度降低,提高了代码的可测试性和可维护性。本篇主要介绍Spring中的三种注入方式,着重讲解在"Spring三种注入...

    Spring依赖注入——java项目中使用spring注解方式进行注入.rar

    依赖注入是一种设计模式,其核心思想是将对象之间的依赖关系从代码中分离出来,由外部容器(如Spring框架)负责管理对象的创建和装配,而不是由对象自身负责。这样可以提高代码的可测试性、可维护性和灵活性。 二、...

    Spring的依赖注入,与前置通知的实例

    在Spring中,依赖注入主要通过以下几种方式实现: 1. **构造器注入**:通过在类的构造函数中传递依赖对象的实例,Spring容器会在创建目标对象时调用合适的构造函数并注入依赖。 2. **setter注入**:在类中定义...

    模仿Spring依赖注入

    【Spring依赖注入详解】 在Java开发中,Spring框架以其强大的依赖注入(Dependency Injection,简称DI)功能而闻名。依赖注入是一种设计模式,它允许我们解耦组件,使我们的应用程序更加灵活,易于测试和维护。本篇...

    Spring 核心机制(依赖注入)

    依赖注入主要有两种实现方式:设值注入(Setter Injection)和构造注入(Constructor Injection)。 ##### 5.1 设值注入 设值注入是指通过setter方法传入被调用者的实例。这种方式简单直观,易于理解和实现,因此在...

    Spring.net(依赖注入应用)

    Spring.NET 提供了多种依赖注入方式,包括构造函数注入、属性注入和方法注入。以下分别介绍: 1. **构造函数注入**:通过在类的构造函数中传递依赖对象的实例来实现。这种方式确保了对象在创建时就已经有了所需的...

    spring依赖注入的实现原理

    Spring依赖注入(Dependency Injection,简称DI)是Java应用开发中常用的设计模式,它极大地提高了代码的可测试性和可维护性。在Spring框架中,依赖注入是核心特性之一,通过控制反转(Inversion of Control,IoC)...

Global site tag (gtag.js) - Google Analytics