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

spring 依赖注入到直接new 对象

阅读更多

当为遗留系统加入spring时,经典问题就是遗留系统需要引用spring管理的bean。幸好spring有机制可以处理这些。

建一个类实现ApplicationContextAware接口,有一个引用ApplicationContext的静态成员,然后,遗留系统需要引用spring管理的bean的地方,使用这个类。

1.比如:我这里建一个SpringContext类

package  net.blogjava.chenlb;

import  org.springframework.beans.BeansException;
import  org.springframework.context.ApplicationContext;
import  org.springframework.context.ApplicationContextAware;

/**
 * 此类可以取得Spring的上下文.
 * Spring 使new方法创建的对象可以引用spring管理的bean.
 * 2007-10-18 上午11:12:33
 * 
@author  chenlb
 
*/
public   class  SpringContext  implements  ApplicationContextAware {

    
protected   static  ApplicationContext context;
    
    
public   void  setApplicationContext(ApplicationContext applicationContext)  throws  BeansException {
        context 
=  applicationContext;
    }

    
public   static  ApplicationContext getContext() {
        
return  context;
    }

}


2.然后在spring配置文件里加

< bean  id ="springContext"  class ="net.blogjava.chenlb.SpringContext" ></bean >


3.其它类中引用

MyBean myBean  =  (MyBean) SpringContext.getContext().getBean( " myBean " );


4.如果老是写SpringContext.getContext().getBean("...");麻烦,可以建一个工厂类来返回你要的bean

package  net.blogjava.chenlb;



public   class  MyServerFactory {


    
public   static  MyBean1 getMyBean1() {
        
return  (MyBean1) SpringContext.getContext().getBean( " myBean1 " );
    }
    

}

 

分享到:
评论

相关推荐

    Spring依赖注入的方式

    在Spring框架中,依赖注入(Dependency Injection,简称DI)是一种重要的设计模式,它使得对象之间的耦合度降低,提高了代码的可测试性和可维护性。本文将深入探讨Spring中的依赖注入方式,包括构造器注入、设值注入...

    spring学习:依赖注入的几种方式讨论

    在Spring框架中,依赖注入(Dependency Injection,简称DI)是一种重要的设计模式,它使得对象之间的耦合度降低,提高了代码的可测试性和可维护性。本文将深入探讨Spring中的依赖注入实现方式,以及如何通过样例文件...

    spring依赖注入bean

    Spring 框架的核心特性之一就是依赖注入(Dependency Injection,简称 DI),这是一种设计模式,它允许我们控制组件之间的耦合,而不是让组件自行创建它们所依赖的对象。这有助于提高代码的可测试性、可维护性和灵活...

    Spring依赖注入使用setter设注入demo

    这个简单的例子展示了Spring依赖注入的核心概念,即通过setter方法将依赖注入到目标对象中。在实际开发中,开发者可以根据需求选择使用setter注入、构造函数注入或者字段注入。setter注入的灵活性在于可以在不改变...

    Spring依赖注入使用构造设注入demo

    本篇将详细讲解如何使用构造器注入作为Spring依赖注入的一种方式,并通过一个完整的可运行示例——"SpringIOCTest2"来加深理解。 首先,理解依赖注入的概念。依赖注入允许我们不在类内部创建对象,而是通过外部源...

    模拟spring依赖注入

    依赖注入则是将这种耦合关系反转,由外部容器(如Spring IoC容器)负责创建对象并管理它们的依赖关系,使得对象可以在不知道依赖的具体实现的情况下工作,降低了代码的复杂性。 Spring框架的IoC(Inversion of ...

    模拟Spring的依赖注入

    在模拟Spring的依赖注入时,我们可以创建一个类似于Spring容器的类,负责创建和管理对象以及它们的依赖关系。这个类可以包含一个注册方法,用于接收需要注入的对象及其依赖,然后在创建对象时进行注入。 **创建模拟...

    Spring依赖注入使用实例工厂设注入demo

    依赖注入允许我们把一个对象(依赖)传递到另一个对象(客户端)中,而不是让客户端自行创建依赖。这有助于解耦组件,使得系统更加灵活,更容易进行单元测试。 接下来,我们讨论实例工厂方法。在Spring中,除了通过...

    Spring依赖注入使用静态工厂设注入demo

    在Spring框架中,依赖注入(Dependency Injection,DI)是一种核心设计模式,它使得对象之间的依赖关系得以解耦,提高了代码的可测试性和可维护性。本篇将详细讲解如何使用静态工厂方法进行依赖注入,结合提供的...

    Spring依赖注入DI.zip

    下面我们将深入探讨Spring依赖注入的概念、工作原理以及如何在实践中应用。 1. **依赖注入概念**: - 依赖:一个类对另一个类的使用称为依赖。 - 注入:将依赖的对象传递给需要它的类,而不是由类自己去创建或...

    使用反射和注解模拟Spring的依赖注入

    在Spring框架中,依赖注入就是利用反射来找到并实例化所需的对象,然后将它们注入到其他对象中。 接下来,我们谈谈注解。注解是元数据的一种形式,可以向编译器或运行时环境提供有关代码的信息。Java中的注解是以`@...

    自己的代码模拟spring的依赖注入

    依赖注入意味着组件不直接创建其依赖的对象,而是由外部实体(如Spring IoC容器)提供。这样做的好处是,我们可以轻松地替换或更改依赖,而无需修改组件的源代码,符合开闭原则。 要模拟Spring的IoC,我们需要以下...

    一个简单的spring依赖注入的例子

    在Spring框架中,依赖注入(Dependency Injection,简称DI)是一种重要的设计模式,它使得对象之间的耦合度降低,提高了代码的可测试性和可维护性。本示例将介绍如何使用Spring框架通过反射机制实现简单的依赖注入。...

    Spring.net(依赖注入应用)

    **Spring.NET 框架详解:依赖注入与应用实践** Spring.NET 是一个开源的企业级应用程序框架,它在.NET平台上实现了类似Java Spring的核心功能,其中包括了依赖注入(Dependency Injection,DI)这一重要设计模式。...

    spring依赖注入的理解.docx

    依赖注入的概念则是将对象的创建和管理交由一个外部容器,即Spring容器来处理。在`Person`类中,我们不再直接创建`Car`对象,而是通过构造函数或setter方法接收`Car`的实例。这样,`Person`类不再负责`Car`的实例化...

    Spring依赖注入

    ### Spring依赖注入详解 #### 一、什么是IoC与DI? 在探讨Spring框架中的依赖注入之前,我们首先需要了解两个核心概念:IoC(Inversion of Control)与DI(Dependency Injection)。这两个概念是理解Spring框架...

    Spring学习笔记(5)----依赖注入的简单实现

    首先,理解依赖注入的基本思想:对象的依赖关系不再由对象自身管理,而是由外部容器(如Spring应用上下文)负责注入。这样做的好处是降低了对象间的耦合度,使得各个组件可以独立地被测试和复用。 依赖注入在Spring...

    编码剖析Spring依赖注入的原理

    总之,Spring的依赖注入是一种强大的设计模式,它简化了对象之间的依赖关系管理,提高了代码的可读性和可测试性。通过理解其工作原理,开发者可以更有效地利用Spring框架,提升软件开发的质量和效率。

    Spring.Net依赖注入例子

    首先,依赖注入的基本思想是,对象不应该自行创建或查找其依赖的对象,而是应该由外部容器(如Spring.NET的ApplicationContext)在运行时提供这些依赖。这样,对象只需要关注自身的核心业务逻辑,而无需关心依赖对象...

    spring依赖注入

    Spring依赖注入是Java开发中的核心概念,特别是在使用Spring框架时,它是实现松耦合和可测试性的重要机制。依赖注入(Dependency Injection,简称DI)允许我们解耦组件之间的关系,使得代码更易于维护和扩展。它通过...

Global site tag (gtag.js) - Google Analytics