`

Spring的DI注入方式

阅读更多

         依赖注入(DI),是spring容器实现的基础,在spring-core模块中实现的。所谓DI,就是指对象是被动接受依赖类而不是自己主动去找,换句话说就是指对象不是从容器中查找它依赖的类,而是在容器实例化对象的时候主动将它依赖的类注入给它。DI注入的方式有:设置注入,接口注入,构造注入。

 

         关于getter和setter方式的注入:
         autowire=”defualt”
         autowire=“byName”
         autowire=”bytype”

例如:有如下两个类需要注入
         package org.jia;


         public class Order {


                   private String orderNum;
                   @SuppressWarnings(“unused”)
                   private OrderItem orderitem;


                   public OrderItem getOrderitem() {
                             return orderitem;
                  }
                  public void setOrderitem(OrderItem orderitem) {
                             this.orderitem = orderitem;
                  }
                  public String getOrderNum() {
                            return orderNum;
                  }
                  public void setOrderNum(String orderNum) {
                            this.orderNum = orderNum;
                  }
            }
          package org.jia;


          public class OrderItem {


                    private String orderdec;


                    public String getOrderdec() {
                               return orderdec;
                    }
                    public void setOrderdec(String orderdec) {
                               this.orderdec = orderdec;
                    }
           }
           getter&&setter方式第一种注入:


<?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=”orderItem”>
                         <property name=”orderdec” value=”item00001″></property>
              </bean>
             <bean id=”order” >
                           <!—–注入变量 名字必须与类中的名字一样——->
                           <property name=”orderNum” value=”order000007″></property>
                           <!–注入对象 名字为orderitem,所属的类的应用id为orderItem–>
                           <property name=”orderitem” ref=”orderItem”></property>

               </bean>

</beans>


getter&&setter方式第二种注入: byName
<?xml version=”1.0″ encoding=”UTF-8″?>
<!DOCTYPE beans PUBLIC “-//SPRING//DTD BEAN//EN” “http://www.springframework.org/dtd/spring-beans.dtd”>
<beans>
                 <!–此时的id就必须与Order.java中所定义的OrderItem的对象名称一样了,不然就会找不到–>
                <bean id=”orderitem”>
                            <property name=”orderdec” value=”item00001″></property>
                  </bean>
                  <bean id=”order” autowire=”byName”>
                             <property name=”orderNum” value=”order000007″></property>
                  </bean>
</beans>


getter&&setter方式第三种注入:byType


<?xml version=”1.0″ encoding=”UTF-8″?>
<!DOCTYPE beans PUBLIC “-//SPRING//DTD BEAN//EN” “http://www.springframework.org/dtd/spring-beans.dtd”>
<beans>
                 <!–按照byType注入则就与id没有关系,可以随便定义id !!!但是不能出现多个此类的id–>
                 <bean id=”orderitdfadafaem”>
                            <property name=”orderdec” value=”item00001″></property>
                 </bean>
                 <bean id=”order” autowire=”byType”>
                             <property name=”orderNum” value=”order000007″></property>
                 </bean>
</beans>

分享到:
评论

相关推荐

    SPRING DI注入例子

    下面将详细探讨Spring DI注入的基本概念、实现方式以及实际应用。 1. **依赖注入的概念** - 依赖:一个类对另一个类的引用被称为依赖。 - 注入:依赖不再由类自身创建,而是由外部容器(Spring IoC容器)在运行时...

    java Spring DI依赖注入.rar

    Java Spring 框架是企业级Java应用开发的首选框架之一,其核心特性之一就是依赖注入(Dependency Injection,简称DI)。依赖注入是一种设计模式,它允许我们解耦组件,提高代码的可测试性和可维护性。Spring框架通过...

    SpringDI.rar

    本压缩包"SpringDI.rar"包含了关于Spring DI的实例,帮助开发者深入理解这一关键特性。 依赖注入允许我们解耦组件之间的关系,使得组件之间不再直接引用彼此,而是通过容器来管理这些依赖关系。这种设计模式提高了...

    Spring三种注入方式(三)

    本篇主要介绍Spring中的三种注入方式,包括构造器注入、设值注入和接口注入。 **一、构造器注入** 构造器注入是通过构造函数来传递依赖对象的一种方式。当类有多个构造函数时,Spring会使用带有最多参数的构造函数...

    Spring的注入方式详解

    下面我们将详细探讨Spring 中的三种注入方式:接口依赖注入(Type1)、setter/getter 注入(Type2,也称为属性注入)和构造方法注入(Type3)。 1. **接口依赖注入(Type1)** 这种注入方式相对不常见,主要适用于...

    spring的注入方式

    Spring提供了多种注入方式,包括set注入、构造注入和自动注入,让我们逐一深入探讨。 1. **Set注入** Set注入是最常见的注入方式,它通过setter方法来设置对象的依赖。首先,你需要在类中声明需要注入的属性,并...

    Spring注入的方式

    本文将详细探讨Spring中的两种主要注入方式:构造器注入和setter注入,以及它们各自的特点和适用场景。 首先,让我们理解什么是依赖注入(Dependency Injection,简称DI)。在传统的编程模式中,一个类通常会直接...

    Spring依赖注入的方式

    本文将深入探讨Spring中的依赖注入方式,包括构造器注入、设值注入和接口注入。 **一、构造器注入** 构造器注入是通过在类的构造函数中传入依赖对象来实现的。Spring容器在创建对象时,会调用带有相应依赖的构造...

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

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

    Spring依赖注入DI.zip

    - 数据访问层:通过DI注入数据源和DAO,实现业务逻辑和数据访问的分离。 - 控制层:在Spring MVC中,Controller通过DI接收Service,处理业务逻辑。 - 服务层:Service类通过DI获取Repository,执行数据库操作。 ...

    spring依赖注入底层详解

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

    Spring三种注入方式(二)

    本篇主要介绍Spring中的三种注入方式,着重讲解在"Spring三种注入方式(二)"中的内容。我们将深入探讨setter注入,这是Spring中最常见的注入方式之一。 ### 一、setter注入 setter注入是通过Spring容器调用对象的...

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

    本文将深入探讨Spring中的三种依赖注入方式,并结合源码分析其工作原理。 1. **构造器注入** 构造器注入是通过构造函数来传递依赖对象的。当创建一个类的新实例时,Spring容器会调用带有所需参数的构造函数,从而...

    Spring三种注入方式(一)

    本篇主要介绍Spring中的三种注入方式,包括构造器注入、设值注入和接口注入。 首先,我们来看构造器注入。构造器注入是在创建对象时,通过构造器传递依赖对象。这种方式强制了对象在创建时就必须提供所有必要的依赖...

    Spring依赖注入使用构造设注入demo

    本篇将详细讲解如何使用构造器注入作为Spring依赖注入的一种方式,并通过一个完整的可运行示例——"SpringIOCTest2"来加深理解。 首先,理解依赖注入的概念。依赖注入允许我们不在类内部创建对象,而是通过外部源...

    spring依赖注入

    在提供的案例"springdi01"中,可能包含了Spring DI的示例代码。通常,这个案例会包含一个或多个Java类,这些类之间存在依赖关系,同时会有相应的配置文件(如`beans.xml`)来描述这些bean和它们的依赖。案例可能会...

    Spring依赖注入检查.

    在实际开发中,结合不同注入方式,可以灵活地构建复杂的应用架构。通过阅读《dependencyCheck》这个压缩包中的文件,初学者可以进一步了解和实践Spring的依赖注入概念,从而加深对Spring框架的理解。

    spring依赖注入的实现原理

    Spring依赖注入(Dependency Injection,简称DI)是Java应用开发中的一个重要概念,它是Spring框架的核心特性之一,用于降低组件之间的耦合度,提高代码的可测试性和可维护性。本篇文章将深入探讨Spring依赖注入的...

    Spring注解注入属性

    在Spring框架中,依赖注入(DI)是一种核心的设计模式,用于促进松耦合的系统设计,使得组件之间的依赖关系可以在运行时动态地建立,而不是在编译时硬编码。在Spring早期版本中,依赖注入主要通过XML配置文件实现,...

    JavaEE spring 依赖注入DI入门案例

    JavaEE spring 依赖注入DI入门案例

Global site tag (gtag.js) - Google Analytics