把对类的实例化工作从类内部转交给Spring的IOC容器来做,被称为控制反转。下面是一个最简单的实例。
这是一个接口,定义了吃饭和走路两个方法:
package com.spring.test.manager;
public interface HuMan {
public void eat();// 次方法用来吃
public void walk();//此方法用来走路
}
下面是两个实现类:
package com.spring.test.manager.impl;
import com.spring.test.manager.HuMan;
public class Chines implements HuMan {
public Chines() {
}
public void eat() {
System.out.println("中国人对吃很有一套!!");
}
public void walk() {
System.out.println("中国人走路很快!!");
}
}
package com.spring.test.manager.impl;
import com.spring.test.manager.HuMan;
public class Amrican implements HuMan {
public Amrican() {
}
public void eat() {
System.out.println("美国人喜欢吃面包!!!!");
}
public void walk() {
System.out.println("美国人喜欢开车,不喜欢走路!");
}
}
下面是配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<bean id="china" class="com.spring.test.manager.impl.Chines"/>
<bean id="usa" class="com.spring.test.manager.impl.Amrican"/>
</beans>
下面是测试的代码
package com.spring.test.main;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
import com.spring.test.manager.HuMan;
public class TestClass {
public TestClass() {
// TODO Auto-generated constructor stub
}
/**
* @param args
*/
public static void main(String[] args) {
ApplicationContext appContext=new FileSystemXmlApplicationContext("/src/applicationContext.xml");
HuMan huMan=null;
huMan= (HuMan) appContext.getBean("china");
huMan.eat();
huMan.walk();
huMan=(HuMan)appContext.getBean("usa");
huMan.eat();
huMan.walk();
}
}
分享到:
相关推荐
**Spring Ioc 实现原理详解** Spring Ioc(Inversion of Control,控制反转)是Spring框架的核心特性之一,它改变了传统应用程序中对象的创建和管理方式。在传统的软件设计中,对象的创建和依赖关系的维护通常由...
Spring IOC(Inversion of Control,控制反转)是Spring框架的核心特性,它将对象的创建和管理权交由Spring容器来负责,从而实现了依赖倒置,增强了代码的可测试性和可维护性。DI(Dependency Injection,依赖注入)...
例如,`SpringIOC`目录中的配置文件(如`applicationContext.xml`)用于定义bean的定义和它们之间的依赖关系。通过XML或注解方式声明bean,Spring可以自动管理bean的实例化、初始化和销毁,从而简化了代码并提高了可...
SpringIOC是Spring Framework中的核心组件之一,负责管理应用程序中的对象、依赖关系和生命周期。 在 Spring IOC 中,对象的创建和管理是通过 BeanFactory 或 ApplicationContext 实现的。BeanFactory 是 Spring ...
在这个例子中,`com.example.spring-ioc-anno`是你应用中注解配置所在的包名。 总结来说,Spring IoC通过注解配置和Maven项目构建,提供了一种高效、灵活的方式来管理和组织Java应用程序。通过学习和实践这些知识,...
Spring 框架是Java开发中的核心框架,它主要由两个关键部分组成:IOC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming,面向切面编程)。这两个概念是Spring框架的核心特性,极大地简化了企业...
Spring IOC,全称Inversion of Control,即“控制反转”,是Spring框架的核心特性之一。在传统的Java应用程序中,对象的创建和管理通常由开发者自己控制。而在Spring IOC中,这种控制权被反转,对象的创建、初始化、...
Spring IoC 加载流程讲解 在本节中,我们将对 Spring IoC 加载流程进行详细的讲解,并探讨 IoC 思想和依赖倒置原则的应用。 IoC 控制反转 IoC(Inversion of Control)是指在软件设计中,将对象实例的控制权从...
Spring IOC(Inversion of Control,控制反转)是Spring框架的核心特性之一,它允许开发者将对象的创建和管理交给Spring容器来处理,从而使代码更加松耦合,更易于测试和维护。下面将详细介绍Spring IOC的基本概念、...
标题 "Spring IOC" 描述了我们讨论的核心主题——Spring 框架中的依赖注入(Inversion of Control,简称 IOC)机制。Spring 是一个广泛应用的 Java 应用开发框架,其核心特性之一就是IOC,它极大地简化了软件组件...
Spring IOC(Inversion of Control,控制反转)是Spring框架的核心特性,它极大地简化了Java应用的开发,通过将对象的创建和管理交由Spring容器来处理,开发者可以更专注于业务逻辑。下面,我们将深入探讨Spring IOC...
- **测试支持**: Spring提供了一系列的测试工具和API,如`@RunWith(SpringJUnit4ClassRunner.class)`,使得基于IoC的单元测试和集成测试变得简单。 以上就是关于"Spring IoC开发最小依赖包"的主要内容,它们共同...
2. 容器初始化:Spring容器会读取配置文件并解析其中定义的Bean,然后在容器内部创建Bean的实例并管理它们。 3. 注入依赖:当Bean需要使用到其他的Bean时,容器负责注入这些依赖,可以通过构造函数注入或者通过...
Spring通过反射机制来实现这一过程,比如在上述的`TestIOC`例子中,Spring能够根据类名动态地创建对象,并通过setter方法注入属性值,实现了对象的实例化和配置。 **依赖注入(DI)**有多种实现方式,包括构造器...
在"基于Maven构建的Spring IoC源码实例"中,我们可以学到如何使用Maven搭建Spring项目,并通过Spring IoC实现组件间的依赖注入。以下是这个实例中可能包含的关键知识点: 1. **Maven项目结构**:了解标准的Maven...
现在,我们来看如何运行这个简单的Spring IOC实例。首先,你需要创建一个Spring配置文件(如`springioc01.xml`),然后编写你的业务类和它们的依赖。接着,你需要一个启动程序来加载配置并初始化容器: ```java ...
在这个例子中,你可能会看到一个配置文件,例如`applicationContext.xml`,这是Spring的配置中心。在这里,你可以定义bean的定义,包括它们的类、属性以及依赖关系。例如,你可以看到类似这样的XML片段: ```xml ...
标题《Spring IoC源码深度剖析开源架构源码2021.pdf》和描述《Spring IoC源码深度剖析开源架构源码2021.pdf》表明该文档主要面向于分析Spring框架中控制反转(IoC)容器的核心源码,解析和理解其内部的工作机制及...