`
斌强-朱
  • 浏览: 50729 次
社区版块
存档分类
最新评论

Spring IoC2

 
阅读更多

Axe 接口

package org.zbq.spring;

public interface Axe {
	public String chop();
}

Axe实现类 SteelAxe

package org.zbq.spring;

public class SteelAxe implements Axe {

	@Override
	public String chop() {
		return "钢斧砍柴很快";
	}
}

Axe实现类StoneAxe
package org.zbq.spring;

public class StoneAxe implements Axe {

	@Override
	public String chop() {
		return "石斧砍柴很慢";
	}
}

Person接口

package org.zbq.spring;

public interface Person {
	public void userAxe();
}

Person实现类 Chinese

package org.zbq.spring;

public class Chinese implements Person {
	private Axe axe;
	
	public Axe getAxe() {
		return axe;
	}

	public void setAxe(Axe axe) {
		this.axe = axe;
	}

	@Override
	public void userAxe() {
		System.out.println(axe.chop());
	}

}

applicationContext.xml (放在项目目录中不在src中)

<?xml version="1.0" encoding="UTF-8"?>
<beans
	xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:p="http://www.springframework.org/schema/p"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
	
	<bean id="chinese" class="org.zbq.spring.Chinese">
		<property name="axe">
			<ref local="steelAxe"/>
		</property>
	</bean>
	<bean id="stoneAxe" class="org.zbq.spring.StoneAxe"/>
	<bean id="steelAxe" class="org.zbq.spring.SteelAxe"/>
</beans>

Client

package org.zbq.spring;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;

public class Client {

	public static void main(String[] args) {
		ApplicationContext act = new FileSystemXmlApplicationContext("applicationContext.xml");
		Person p = (Person) act.getBean("chinese");
		p.userAxe();
	}

}


分享到:
评论

相关推荐

    springIoc实现原理

    **Spring Ioc 实现原理详解** Spring Ioc(Inversion of Control,控制反转)是Spring框架的核心特性之一,它改变了传统应用程序中对象的创建和管理方式。在传统的软件设计中,对象的创建和依赖关系的维护通常由...

    实验一 Springioc基本操作.docx

    SpringIOC是Spring Framework中的核心组件之一,负责管理应用程序中的对象、依赖关系和生命周期。 在 Spring IOC 中,对象的创建和管理是通过 BeanFactory 或 ApplicationContext 实现的。BeanFactory 是 Spring ...

    springIOC手写框架分析

    springIOC手写框架分析springIOC手写框架分析springIOC手写框架分析springIOC手写框架分析springIOC手写框架分析springIOC手写框架分析springIOC手写框架分析springIOC手写框架分析springIOC手写框架分析springIOC...

    spring ioc模块手写demo

    spring ioc模块手写demospring ioc模块手写demospring ioc模块手写demospring ioc模块手写demospring ioc模块手写demospring ioc模块手写demospring ioc模块手写demospring ioc模块手写demospring ioc模块手写demo...

    spring ioc和aop原理流程图(详细)

    Spring 框架是Java开发中的核心框架,它主要由两个关键部分组成:IOC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming,面向切面编程)。这两个概念是Spring框架的核心特性,极大地简化了企业...

    Spring IoC加载流程讲解

    Spring IoC 加载流程讲解 在本节中,我们将对 Spring IoC 加载流程进行详细的讲解,并探讨 IoC 思想和依赖倒置原则的应用。 IoC 控制反转 IoC(Inversion of Control)是指在软件设计中,将对象实例的控制权从...

    SpringIoc示例代码

    2. **依赖注入(DI)**:Spring IOC的主要功能之一就是依赖注入。有两种方式实现DI:构造器注入和setter注入。构造器注入是在Bean实例化时通过构造函数传递依赖,而setter注入则是通过调用setter方法设置依赖。在`...

    spring Ioc容器配置

    spring Ioc容器配置 IOC容器数据源配置 &lt;!-- 配置数据源 --&gt; destroy-method="close"&gt; &lt;value&gt;org.gjt.mm.mysql.Driver &lt;value&gt;jdbc:mysql://localhost:3306/demo &lt;value&gt;root ...

    Spring中IoC优点与缺点解析

    Spring 中 IoC 优点与缺点解析 IoC(Inversion of Control)是 Spring 框架中的一种设计模式,它的主要思想是将对象的创建和管理交给容器,从而解耦合对象之间的依赖关系。今天,我们将详细解析 IoC 的优点和缺点。 ...

    spring ioc思维导图源文件

    Spring IOC(Inversion of Control,控制反转)是Spring框架的核心特性之一,它允许开发者将对象的创建和管理交给Spring容器来处理,从而使代码更加松耦合,更易于测试和维护。下面将详细介绍Spring IOC的基本概念、...

    spring ioc

    标题 "Spring IOC" 描述了我们讨论的核心主题——Spring 框架中的依赖注入(Inversion of Control,简称 IOC)机制。Spring 是一个广泛应用的 Java 应用开发框架,其核心特性之一就是IOC,它极大地简化了软件组件...

    SpringIOC经典Demo

    2. **Bean的定义与管理**:在Spring中,我们使用XML配置文件或者基于注解的方式定义Bean。Bean定义包含了类名、初始化方法、依赖关系等信息。Spring容器根据这些定义来创建和管理Bean。例如,在`Spring-IOC示例.doc`...

    Springioc注入Demo

    2. **setter注入**:通过setter方法来设置依赖对象,Spring容器会在对象创建后调用setter方法注入依赖。这种方式更符合JavaBean规范,使得对象可以在无依赖的情况下被实例化,但在使用前需要注入依赖。 3. **接口...

    Spring IOC.pdf

    2. 配置Spring的IoC容器,如创建applicationContext.xml文件,并在其中配置Bean,比如定义一个数据访问对象(DAO)或服务层对象(Service)。 3. 在Java代码中利用Spring的依赖注入特性,例如使用@Autowired注解来...

    springioc和spring aop

    Spring框架是Java开发中不可或缺的一部分,它通过提供两种核心特性——控制反转(IoC)和面向切面编程(AOP)来简化应用的构建。理解并掌握这两种技术对于任何Java开发者来说都至关重要。 **控制反转(IoC)**,也...

    Spring IoC依赖包

    2. `spring-context.jar`: 这个包扩展了`spring-beans.jar`,引入了上下文的概念,提供了更丰富的功能,比如事件发布、国际化、资源访问等。同时,它也支持通过Java注解来配置Bean,使代码更加简洁。 3. `spring-...

    Spring IoC源码深度剖析开源架构源码2021.pdf

    标题《Spring IoC源码深度剖析开源架构源码2021.pdf》和描述《Spring IoC源码深度剖析开源架构源码2021.pdf》表明该文档主要面向于分析Spring框架中控制反转(IoC)容器的核心源码,解析和理解其内部的工作机制及...

    Java反射_Spring IOC

    Java反射和Spring IOC是Java开发中的两个重要概念,它们在构建灵活、可扩展的应用程序时起着关键作用。本文将深入探讨这两个主题,并提供相关的学习资源。 首先,让我们了解一下Java反射。Java反射机制是Java语言的...

    Spring IoC讲解PPT

    **Spring 的 IoC 容器** IoC(Inversion of Control)即控制反转,是 Spring 的核心特性之一。在传统的编程模式中,对象之间存在依赖关系,程序员需要手动创建和管理这些对象。而在 Spring 中,IoC 容器负责管理和...

    以注解方式模拟Spring IoC AOP

    在Spring框架中,依赖注入(Inversion of Control, IoC)和面向切面编程(Aspect Oriented Programming, AOP)是两大核心特性。本篇将深入探讨如何通过注解方式来模拟Spring的这两种机制,帮助你理解其底层原理。 #...

Global site tag (gtag.js) - Google Analytics