`
yunmanfan
  • 浏览: 94027 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Spring中的IoC(控制反转)容器初探

阅读更多
IoC,翻译成中文有人叫控制反转,听起来很别别扭,其实就是依赖关系的转移,通过XML配置文件由容器来管理类,而不是在类中直接生成Bean的实例。

下面通过一个Hello World的实例来了解一下最基础的IoC

首先MyEclipse5.5新建一个Java工程,工程名上单击右键添加Spring容器能力。

我们先编写一个HelloWorld类

qiudawei115.base.HelloWorld.java

package qiudawei115.base;



public class HelloWorld {

    String message;



    public String getMessage() {

       return message;

    }



    public void setMessage(String message) {

       this.message = message;

    }

}

注意这只是一个简单的Bean,没有任何其他东西。

在applicationContext.xml配置qiudawei115.base.HelloWorld(红色字体)

<?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="helloWorld" class="qiudawei115.base.HelloWorld">

    <property name="message" value="Hello World!"></property>

</bean>

</beans>

现在写一个测试类,检验一下qiudawei115.base.HelloWorldMain.java

package qiudawei115.base;



import org.springframework.beans.factory.BeanFactory;

import org.springframework.beans.factory.xml.XmlBeanFactory;

import org.springframework.core.io.ClassPathResource;

public class HelloWorldMain {



    /**

     * @param args

     */

    public static void main(String[] args) {

       // TODO Auto-generated method stub

//读取配置文件 

ClassPathResource resource=new ClassPathResource("applicationContext.xml");

       BeanFactory beanFactory=new XmlBeanFactory(resource);

//获取HelloWorld实例     

HelloWorld helloWorld=(HelloWorld)beanFactory.getBean("helloWorld");

       System.out.print(helloWorld.getMessage());

    }

}

这样就完成了一个简单的IoC实例。

这里我们的Bean是由xml文件去管理的,我们索要做的就是从xml中获取这个类的实例。
分享到:
评论

相关推荐

    Spring.net二----初探IOC容器.rar源代码

    在本教程中,我们将深入探讨Spring.NET中的重要组件——IOC(Inversion of Control,控制反转)容器,以及如何通过它来管理对象的生命周期和依赖关系。 IOC容器是Spring.NET的核心,它负责创建、配置和组装应用程序...

    Ioc容器的个人理解介绍

    - **容器初探**:Ioc容器就像是一个工厂,它根据预设的规则(配置)来创建和管理对象,而不是让应用程序直接创建对象。这种设计使得对象的生命周期和依赖关系得以解耦,增强了代码的灵活性和可测试性。 - **理解...

    spring 初探

    在Spring中,还有一项重要技术叫做IoC(Inverse of Control,控制反转)。IoC是DI的一种更广泛的表述,它描述了框架如何管理对象的生命周期和装配。Spring容器(ApplicationContext或BeanFactory)负责创建对象,...

    spring in action 最新

    在介绍Spring框架时,书中首先讲解了“控制反转”(Inversion of Control,IoC)和“面向切面编程”(Aspect-Oriented Programming,AOP)这两个核心理念。IoC使得开发者可以将对象的创建和管理交给容器处理,从而更...

    Spring开发指南

    依赖注入是一种编程技术,用来实现控制反转(Inversion of Control,简称IoC),从而使得对象间的耦合度降低。在Spring中,依赖注入可以通过多种方式实现,包括接口注入、设值注入和构造子注入。 - 接口注入是通过...

    java学习之spring2.0

    - **依赖注入**:是Spring的核心机制,通过控制反转(IoC)实现了对象之间的解耦,包括设值注入和构造注入。 - **BeanFactory与ApplicationContext**:BeanFactory是Spring的基础容器,而ApplicationContext提供了...

    pring初探共18页.pdf.zip

    - **IoC(Inversion of Control)**:控制反转,是Spring实现DI的一种设计模式。 - **注解驱动开发**:如`@Component`、`@Service`、`@Repository`、`@Controller`等,以及`@Autowired`、`@Qualifier`等依赖注入注解...

    基于SPRING框架的平安PAFA架构解析

    PAFA框架的核心之一是控制反转(Inversion of Control, IoC)和依赖注入(Dependency Injection, DI),它们可以帮助开发者更轻松地管理对象间的依赖关系。 **3.3 控制反转的种种** - **3.3.1 拉模式的依赖查找**...

Global site tag (gtag.js) - Google Analytics