`

Spring装配bean

阅读更多

       在Spring中,对象无需自己负责创建和管理对象。相反,容器负责把需要相互协作的对象引用赋予各个对象。这样对象自身就可以从对象的管理中解脱出来,从而可以实现解耦。创建应用对象之间协作关系的行为通常被称为装配。这也是依赖注入的本质。依赖注入是Spring使用的基本要素,因此在开发基于Spring的应用时,这些技术无时无刻不在被使用着。

 

        Spring是一个基于容器的框架。但是如果没用相应的配置的话,那么就相当于是一个空容器。一个空的容器是没有实际用处的。所以我们需要通过配置来告诉容器它需要加载那些Bean并且如何装配这些bean。虽然sping提供了两种配置方式,但基于xml文件的配置是spring最原始的配置方式,虽然在大型项目中其配置将变得相当的庞大。但简单的项目使用这种方法还是可以达到可读性好的优点的。

 

       装配的一个重要目的就是,将想要的值注入到相应Bean的属性中。依据注入的方法可以将他们分成两类。构造器注入和setter方式的注入(命名空间p)。依据内容可以分成五类。简单值,引用,集合,内部bean,SPEL表达式。

 

构造器注入简单值

<bean id="duke" class="org.spring.chapter2.Juggler">
	<constructor-arg value="15" />

 使用xml <constructor-arg>标签的value属性通过Juggler类的构造方法注入简单值“15”

 

构造器注入引用

<bean id="sonnet29"
	class="org.spring.chapter2.Sonnet29" />
	
<bean id="poeticDuke" class="org.spring.chapter2.PoeticJuggler">
	<constructor-arg value="15" />
	<constructor-arg ref="sonnet29" />

  使用xml <constructor-arg>标签的ref属性通过PoeticJuggler类的构造方法注入sonnet29的引用。

 

setter方式注入简单值和引用

<bean id="piano" class="org.spring.chapter2.Piano" />

<bean id="kenny"
	class="org.spring.chapter2.Instrumentalist">
<property name="song" value="Jingle Bells" />
<property name="instrument" ref="piano" />

</bean>

 使用xml<property>的name和value属性指定bean的属性的值,需要bean中有相应的setXXX()方法。

 

setter方式注入简单值和引用(命名空间p)

<bean id="saxophone" class="org.spring.chapter2.Saxophone" />
<bean id="dan" class="org.spring.chapter2.Instrumentalist"
p:song = "Jingle Bells"
p:instrument-ref = "saxophone"
/>

 可以简化配置,但需在beans中声明相应的命名空间

 

setter方式注入列表

<bean id="saxophone" class="org.spring.chapter2.Saxophone" />
<bean id="piano" class="org.spring.chapter2.Piano" />
	
<bean id="hank" class="org.spring.chapter2.OneManBand">
	<property name = "instruments">
		<list>
			<ref bean="saxophone" />
			<ref bean="piano" />
		</list>
	</property>
</bean>

 

 

注:Spring实战(第三版)的学习笔记

分享到:
评论

相关推荐

    spring装配bean实例代码

    本文将深入探讨Spring装配Bean的实例代码,帮助你更好地理解这一关键概念。 首先,Spring装配Bean主要有两种方式:XML配置和注解配置。在本例中,我们将重点关注XML配置,对应的压缩包文件名为“springxmldemo”,...

    spring装配bean的3种方式总结

    Spring装配Bean的3种方式总结 Spring框架是Java EE应用程序的核心框架之一,它提供了依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)等功能。依赖注入是Spring框架的核心...

    Spring装配bean方法实例总结

    Spring装配bean方法实例总结 Spring框架中,bean的装配是非常重要的一个步骤,它可以通过多种方式来实现,包括XML配置、Java配置和自动装配等。下面是Spring装配bean方法实例总结。 一、XML配置 在Spring框架中...

    浅谈Spring装配Bean之组件扫描和自动装配

    Spring装配Bean之组件扫描和自动装配 Spring框架提供了两种方式来实现自动化装配:组件扫描和自动装配。组件扫描是指Spring自动发现应用上下文中所创建的bean,而自动装配是指Spring自动满足bean之间的依赖。 组件...

    Spring装配Bean教程之XML安装配置bean详解

    本文将深入探讨Spring如何通过XML配置来装配Bean。 首先,要创建XML配置,你需要创建一个新的XML文件,通常命名为`applicationContext.xml`,并将其放置在项目的资源目录下。XML配置文件的根元素是`&lt;beans&gt;`,它...

    spring bean XML配置入门

    在本文中,我们将深入探讨Spring框架中的Bean XML配置,这是Spring的核心特性之一,它允许我们定义、管理和装配应用中的对象。我们将围绕以下知识点展开: 1. **Spring框架基础**: Spring是一个开源的Java平台,...

    Spring装配Bean之用Java代码安装配置bean详解

    总的来说,Spring的Java配置提供了一种类型安全、易于理解和维护的方式来装配Bean,特别是对于复杂的应用场景,它比XML配置更具优势。通过使用Java配置,我们可以更好地控制Bean的创建和依赖关系,使Spring应用的...

    day38 16-Spring的Bean的装配:注解的方式

    以上就是Spring使用注解方式装配Bean的基本过程和关键注解的介绍。通过这种方式,我们可以轻松地管理Bean的生命周期,实现依赖注入,以及对Bean的其他配置,极大地提高了代码的可维护性和灵活性。在实际项目中,结合...

    Spring的Bean配置

    在Spring中,Bean是应用中的对象,它们由Spring IoC容器负责创建、管理和装配。Bean配置是定义这些对象如何被创建和如何相互关联的过程。 **IoC(Inversion of Control)和DI(Dependency Injection)**: IoC是...

    详解Spring中Bean的生命周期和作用域及实现方式

    Spring中Bean的生命周期和作用域及实现方式 Spring是一个非常流行的Java应用程序框架,它提供了一个灵活的机制来管理Bean的生命周期和作用域。Bean的生命周期和作用域是Spring框架中两个非常重要的概念,它们决定了...

    Spring Bean重复执行两次(实例被构造两次)问题分析

    2. **@Autowired注解的误用**:Spring的自动装配机制可能导致Bean的多次实例化。如果一个BeanA依赖于另一个BeanB,同时BeanB也依赖于BeanA,那么Spring在处理依赖关系时可能会陷入循环引用,导致两个Bean都实例化两...

    spring中的bean

    在Spring中,Bean通常代表应用程序中的一个对象,这些对象由Spring容器(ApplicationContext)管理,包括创建、初始化、装配和销毁。Bean可以通过XML配置文件、注解或者Java配置类进行定义。 1. **Bean的定义**:在...

    编码剖析Spring装配基本属性的原理

    本文将深入探讨Spring装配基本属性的原理,帮助你更好地理解如何在代码中使用和配置这些属性。 首先,Spring装配的基本方式有两种:XML装配和基于注解的装配。XML装配是早期版本Spring的主要装配方式,通过`&lt;bean&gt;`...

    Spring自动装配Bean实现过程详解

    Spring自动装配Bean实现过程详解 Spring框架提供了自动装配Bean的功能,该功能可以根据Bean的属性名称或类型自动将Bean装配到其他Bean中,从而简化了Bean的配置工作。在本文中,我们将详细介绍Spring自动装配Bean...

    Java中Spring获取bean方法小结

    Spring的核心在于其BeanFactory和ApplicationContext,它们使得对象的管理和装配变得简单。这里我们将详细探讨如何在Java中通过Spring获取配置的bean。 1. **BeanFactory与ApplicationContext** - **BeanFactory*...

    spring在IoC容器中装配Bean详解

    Spring 在 IoC 容器中装配 Bean 详解 Spring 框架中的 IoC 容器是一个核心组件,它提供了 Bean 的装配、管理和依赖注入等功能。在 Spring 框架中,IoC 容器是 Bean 的容器,负责创建、管理和装配 Bean。在本文中,...

    粗略实现spring创建bean

    6. Spring Bean 的装配 - 自动装配:通过`@Autowired`注解自动寻找匹配类型的Bean进行装配。 - 配置文件指定:在XML配置文件中使用`&lt;bean&gt;`标签的`ref`属性指定依赖的Bean。 - 使用`@Qualifier`:当有多个相同...

    Spring的Bean配置说明

    - **`byName`**:根据属性名称进行自动装配,Spring会尝试将名称匹配的Bean注入到相应的位置。 - **`byType`**:根据类型进行自动装配,如果BeanFactory中有且只有一个Bean与属性类型匹配,则自动装配该属性。如果...

    spring bean 属性总结

    ### Spring Bean 属性详解 Spring框架是Java平台上的一个开源框架,主要用来简化企业级应用程序的开发。在Spring中,核心概念之一就是Bean,它是一个简单的Java对象,由Spring IoC容器管理。Spring通过XML配置文件...

Global site tag (gtag.js) - Google Analytics