<?xml version="1.0" encoding="gb2312"?>
<!-- default-lazy-init="true" 为beans下所有的进行延迟初始化 -->
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd" >
<!-- id 不能是特殊字符,如:“/”,如果有特殊字符则应该用name。 交给Spring管理的Bean类-->
<!--默认情况下(没有配置scope属性)是单实例 指的是每次获取Bean都是同一个对象 初始化容器时候就实例化实例化 PersonService
可是使用lazy-init="true" 进行延迟初始化 ,即第一次获取bean的时候才初始化
scope="prototype"每次获取Bean都是新的对象 第一次请求(调用getBean)的时候实例化 PersonService .
init-method="" 初始化 方法。即当bean被初始化后接下来会继续执行的方法。
destroy-method="" -->
<!-- <bean id="personService" class="com.milo.services.impl.PersonServiceBean"
lazy-init="false" init-method="init" destroy-method="destory" scope="prototype"/> -->
<!-- 使用 类构造器方法 实例化 PersonService
<bean id="personService1" class="com.milo.services.impl.PersonServiceBean" scope="prototype"/>
使用 静态工厂方法 实例化PersonService
<bean id="personService2" class="com.milo.services.impl.PersonServiceBeanFactory" factory-method="createPersonServiceBean"/>
使用 实例化工厂方法 实例化PersonService
<bean id="personServiceFactory" class="com.milo.services.impl.PersonServiceBeanFactory"/>
<bean id="personService3" factory-bean="personServiceFactory" factory-method="createPersonServiceBean2"/>
-->
<!-- 依赖对象注入 可以被多个Bean调用-->
<bean id="personDao" class="com.milo.dao.impl.PersonDaoBean"></bean> <!-- 默认被实例化 -->
<bean id="personService" class="com.milo.services.impl.PersonServiceBean" >
<!-- ref="personDao" 注入实例 -->
<property name="personDaoTest" ref="personDao"></property>
<!--对基本类型的注入 -->
<property name="name" value="milo.yang"></property>
<property name="id" value="88"></property>
<!-- 对集合类的注入操作 -->
<property name="sets">
<set> <!-- Set 集合注入 -->
<value>第1个set</value>
<value>第2个set</value>
<value>第3个set</value>
</set>
</property>
<property name="lists">
<list> <!-- List 集合注入 -->
<value>第1个list</value>
<value>第2个list</value>
<value>第3个list</value>
</list>
</property>
<property name="props">
<props> <!-- Properties 集合注入 -->
<prop key="propsKey1">第1个properties</prop>
<prop key="propsKey2">第2个properties</prop>
<prop key="propsKey3">第3个properties</prop>
</props>
</property>
<property name="maps">
<map> <!-- Map 集合注入 -->
<entry key="mapsKey1" value="第1个maps"></entry>
<entry key="mapsKey2" value="第2个maps"></entry>
<entry key="mapsKey3" value="第3个maps"></entry>
</map>
</property>
</bean>
<!-- 也可以采用内部Bean的方式注入对象
但不可以为其他Bean调用,只能被PersonServiceBean使用。
<bean id="personService" class="com.milo.services.impl.PersonServiceBean" >
<property name="personDaoTest" >
<bean class="com.milo.dao.impl.PersonDaoBean"/>
</property>
</bean>
-->
</beans>
分享到:
相关推荐
Spring 框架的核心是控制反转(IOC)和依赖注入(DI),它可以将对象的创建和依赖关系管理,实现高内聚、低耦合的开发模式。 下面是 Spring 框架的核心知识点: 1. 控制反转(IOC):控制反转是 Spring 框架的...
**Spring 框架中的控制反转 (IoC) 和依赖注入 (DI)** 在软件开发中,控制反转(Inversion of Control,简称IoC)是一种设计原则,它将对象的创建和管理权从代码中剥离出来,转交给一个外部容器(如Spring框架)。...
Spring IOC(Inversion of Control,控制反转)是Spring框架的核心特性,它改变了传统Java应用程序中对象的创建和管理方式。在传统的程序设计中,我们通常手动创建对象并管理它们之间的依赖关系,而在Spring中,这些...
### Spring IoC与注解依赖注入详解 #### 一、Spring框架简介 Spring框架是由Rod Johnson创建的一个开源项目,最初是为了解决企业级应用开发中的复杂性问题而诞生的。Spring框架的核心特性包括IoC(Inversion of ...
在Spring框架中,控制反转(IoC,Inversion of Control)和依赖注入(DI,Dependency Injection)是核心设计理念,它们极大地简化了Java应用的开发和维护。本文将深入探讨如何自定义Spring实现读取`...
本文介绍了Spring框架中的控制反转IOC和依赖注入DI,欢迎阅读,共同学习,一起进步。 Spring框架基础参考:深入学习Spring基础 文章目录一.入门程序和IOC简介二.IOC-控制反转三.DI-依赖注入四. IOC和DI五.Spring...
**Spring框架中的IoC(控制反转)概念** 在软件开发中,IoC(Inversion of Control,控制反转)是一种设计模式,它将对象的创建和管理责任从代码中剥离出来,交由一个容器来处理。Spring框架是Java平台上的一个核心...
Spring的核心特性之一就是它的Inversion of Control(IoC,控制反转)容器,也被称为Dependency Injection(DI,依赖注入)。这个概念是Spring框架使应用程序组件之间解耦的关键。让我们深入探讨一下Spring的IoC和...
它通过依赖注入(Dependency Injection, DI)和面向切面编程(Aspect Oriented Programming, AOP)等特性实现了对应用程序的解耦,并通过IOC(Inversion of Control)控制反转来简化配置和管理。 #### 二、Spring ...
**Spring控制反转(IoC)理解** Spring框架的核心特性之一是控制反转(Inversion of Control,简称IoC),也常被称为依赖注入(Dependency Injection,简称DI)。IoC是一种设计模式,它将对象的创建和管理从应用代码...
Spring框架的核心特性之一就是依赖注入(Dependency Injection,简称DI),它通过控制反转(Inversion of Control,简称IOC)实现。这个"helloIoc.zip"压缩包包含的是一组用于演示Spring IOC基本概念和使用的测试...
Spring框架是Java开发中广泛应用的一个开源框架,以其优秀的反转控制(Inversion of Control,IoC)和依赖注入(Dependency Injection,DI)理念为核心,极大地简化了企业级应用的开发工作。下面将详细介绍这两个...
### Martin Fowler 控制反转与依赖注入 #### 重要概念与背景 Martin Fowler的文章探讨了Java社区近期关注的一个热点话题:轻量级容器及其背后的模式。这些容器的主要目标是帮助开发者将来自不同项目的组件组装成一...
### IoC Spring 控制反转详解 #### 一、IoC概念与重要性 在深入了解Spring框架之前,我们首先需要理解“控制反转”(Inversion of Control,简称IoC)的概念。IoC是一种设计原则,旨在减少组件之间的耦合度,提高...
在Spring框架中,IOC(Inversion of Control,控制反转)是一种设计原则,它将对象的创建和管理交给了容器,从而让代码更加解耦、可维护。本资料包"SpringIOC_泛型依赖注入.zip"主要关注的是Spring如何通过泛型进行...
Spring的核心特性之一是依赖注入(Dependency Injection,简称DI),也称为控制反转(Inversion of Control,简称IoC)。 **依赖注入 (DI) 和 控制反转 (IoC)** 依赖注入是Spring的核心设计原则之一。它是一种设计...
### Spring框架中的IoC控制反转详解 #### 一、IoC概述 控制反转(Inversion of Control,简称IoC)是一种设计思想,在Spring框架中,它主要用来解决对象依赖问题。传统的面向对象编程中,对象之间的依赖关系由对象...
在实际开发中,我们通常会使用IoC容器(如Spring框架)来实现依赖注入,通过定义和实现接口来遵循面向接口编程的原则,从而实现这些设计理念。这样的设计模式不仅使代码更加简洁,也更容易适应需求变化,是构建高...
总之,Spring Ioc通过控制反转和依赖注入,极大地提高了代码的可维护性和可测试性,降低了系统的复杂度,使得开发人员能够更加专注于业务逻辑的实现。在实际开发中,理解并熟练运用Spring Ioc,对于提升开发效率和...
Spring框架是Java开发中不可或缺的一部分,它以IoC(Inversion of Control,控制反转)和DI(Dependency Injection,依赖注入)为核心,极大地简化了应用程序的复杂性。在本教程中,我们将深入探讨如何通过XML配置在...