所谓的控制反转就是
应用本身不负责依赖对象的创建以及维护,依赖对象的创建及维护是由外部容器负责的。这样控制权就由应用转移到了外部容器,控制权的转移就是所谓的控制反转。
例如:
1.创建DAO接口
package com.bill.dao;
public interface PersonDao {
public void add();
}
2.创建DAO接口的实现类
package com.bill.dao.impl;
import com.bill.dao.PersonDao;
public class PersonDaoBean implements PersonDao {
public void add() {
System.out.println("this is add() of PersonDaoBean");
}
}
3.应用层代码如下:
package com.bill.impl;
import com.bill.PersonService;
import com.bill.dao.PersonDao;
/**
* @author Bill
*/
public class PersonServiceBean implements PersonService {
private PersonDao personDao;
public void setPersonDao(PersonDao personDao) {
this.personDao = personDao;
}
public PersonDao getPersonDao(){
return personDao;
}
public void save(){
personDao.add();
}
}
4.beans.xml
<bean id="personDao" class=" com.bill.dao.impl.PersonDaoBean"/>
<bean id="personService" class="com.bill.impl.PersonServiceBean">
<property name="personDao" ref="personDao"></property>
</bean>
5.测试代码
AbstractApplicationContext act = new ClassPathXmlApplicationContext("beans.xml");
PersonService personService = (PersonService)act.getBean("personService");
personService.save();
act.close();
控制台打印出:this is add() of PersonDaoBean
说明了,应用本身PersonServiceBean不负责PersonDaoBean对象的创建和维护,PersonDaoBean对象的创建和维护由Spring容器负责,PersonDaoBean对象通过依赖注入,注入到应用层PersonServiceBean的属性personDao中。这就是控制反转。
分享到:
相关推荐
根据给定的信息,我们可以将Spring IOC控制反转的过程分解为以下五个步骤: 1. **导入需要的包**: - 首先需要添加Spring框架的相关依赖到项目中,这通常是在项目的`pom.xml`文件中通过Maven添加依赖完成的。 ```...
spring IOC控制反转 spring IOC控制反转 spring IOC控制反转
### Spring框架中的IoC控制反转详解 #### 一、IoC概述 控制反转(Inversion of Control,简称IoC)是一种设计思想,在Spring框架中,它主要用来解决对象依赖问题。传统的面向对象编程中,对象之间的依赖关系由对象...
**Spring框架中的IoC(控制反转)概念** 在软件开发中,IoC(Inversion of Control,控制反转)是一种设计模式,它将对象的创建和管理责任从代码中剥离出来,交由一个容器来处理。Spring框架是Java平台上的一个核心...
**Spring技术--IOC控制反转** 在Java开发领域,Spring框架以其强大的功能和广泛的应用而闻名。其中,IOC(Inversion of Control,控制反转)是Spring的核心特性之一,它改变了传统对象创建和管理的方式,实现了依赖...
【Spring框架IoC控制反转】 一、Spring框架是什么 Spring框架是Java开发中的一款轻量级框架,诞生于2003年,旨在简化企业级应用的开发复杂性。Spring的核心理念包括控制反转(IoC)和面向切面编程(AOP)。作为一...
Spring框架的核心特性之一就是依赖注入(Dependency Injection,简称DI),它通过控制反转(Inversion of Control,简称IOC)实现。这个"helloIoc.zip"压缩包包含的是一组用于演示Spring IOC基本概念和使用的测试...
Spring IOC(Inversion of Control,控制反转)是Spring框架的核心特性,它改变了传统Java应用程序中对象的创建和管理方式。在传统的程序设计中,我们通常手动创建对象并管理它们之间的依赖关系,而在Spring中,这些...
在Spring框架中,IOC(Inversion of Control,控制反转)是其核心概念之一,它改变了传统应用程序中的对象创建和管理方式。本学习资料主要聚焦于Spring的IOC容器,特别是从最基本的BeanFactory开始,逐步深入理解...
**Spring IOC控制反转详解** 在Java开发中,Spring框架的核心特性之一就是IOC(Inversion of Control,控制反转),它改变了传统程序设计中的对象依赖管理方式,使得开发者可以更专注于业务逻辑,而不是对象的创建...
### IOC控制反转学习文档 #### 一、控制反转(IOC)概述 控制反转(Inversion of Control,简称IOC),是Spring框架的核心概念之一。它通过管理对象间的依赖关系,实现了对象的解耦,使得代码更加灵活且易于维护。在...
Java中的控制反转(IOC,Inversion of Control)和Spring框架是现代企业级应用开发的核心概念。IOC使得应用程序的组件之间解耦,提高了代码的可测试性和可维护性。本篇文章将详细探讨如何通过反射机制来实现一个简单...
在Java世界里,Spring框架是应用最广泛的轻量级框架之一,它的核心特性包括IOC(Inversion of Control,反转控制)和AOP(Aspect Oriented Programming,面向方面编程)。这两个概念是Spring框架的灵魂,极大地提升...
Spring Ioc(Inversion of Control,控制反转)是Spring框架的核心特性之一,它改变了传统应用程序中对象的创建和管理方式。在传统的软件设计中,对象的创建和依赖关系的维护通常由代码自身来完成,而在Spring Ioc中...
### IoC Spring 控制反转详解 #### 一、IoC概念与重要性 在深入了解Spring框架之前,我们首先需要理解“控制反转”(Inversion of Control,简称IoC)的概念。IoC是一种设计原则,旨在减少组件之间的耦合度,提高...
基于annotation注解方式理解SpringIOC控制反转
### IOC控制反转在代码中的体现 #### 一、IOC(Inversion of Control)概念解析 IOC,即控制反转,是一种设计思想,在Java开发领域中,它主要被用来消除程序之间的依赖性,使得类的设计更加灵活。传统的编程模式下...
IOC控制反转代码,bilibili配套文件 IOC(Inversion of Control,控制反转)是 Spring 框架的核心机制之一,它是一个用于创建和管理对象的容器。控制反转是将对象的创建进行反转,常规情况下,对象都是开发者手动...
1. IOC(控制反转):将对象的创建和管理的责任从对象自身转移到一个外部容器(如Spring框架),对象不再控制其依赖对象的生命周期。 2. DI(依赖注入):是IOC的一种实现,通过容器将依赖对象注入到需要它的对象中...
Spring框架中的IOC(控制反转)和DI(依赖注入)是两种关键的设计模式,它们极大地提升了软件的可维护性和可扩展性。控制反转是一种设计思想,它改变了传统的对象创建方式,将对象的创建和管理权从应用程序自身转移...