`

普通java bean中获取Spring的ApplicationContext

阅读更多
很多情况下,我们需要在普通javabean中获取spring 配置文件中的bean。

1.创建一个类 ,让其实现org.springframework.context.ApplicationContextAware接口来让Spring在启动的时候为我们注入ApplicationContext对象.
  不实现ApplicationContextAware接口应该也是可以的,不过我这里测试没通过。

    示例代码: 
public class MyApplicationContextUtil implements ApplicationContextAware{
private static ApplicationContext context;//声明一个静态变量保存
public void setApplicationContext(ApplicationContext contex)
   throws BeansException {
  this.context=contex;
}
public static ApplicationContext getContext(){
  return context;
}
}


2.在applicationContext.xml文件中配置此bean,以便让Spring启动时自动为我们注入ApplicationContext对象.
           <!-- 这个bean主要是为了得到ApplicationContext 所以它不需要其它属性-->
           <bean  id="myApplicationContextUtils" class="org.ing.springutil.MyApplicationContextUtil"></bean>

3.有了这个bean取得ApplicationContext之后我们就可以调用其getBean("beanName")方法来得到由Spring 管理所有对象.

ApplicationContext springContext = MyApplicationContextUtils.getApplicationContext();
ITesTaskExcuteService tesTaskExcuteService=(ITesTaskExcuteService)springContext.getBean("tesTaskExcuteService");
这样就可以取得你想要的spring bean。
分享到:
评论
1 楼 nocb 2011-08-05  
非常感谢 ,

相关推荐

    Java中Spring获取bean方法小结

    这里我们将详细探讨如何在Java中通过Spring获取配置的bean。 1. **BeanFactory与ApplicationContext** - **BeanFactory** 是Spring中最基础的IoC容器,负责管理和实例化Bean。它允许开发者定义Bean的生命周期和...

    Spring获取ApplicationContext对象工具类的实现方法

    在实际开发过程中,经常需要从各个角落获取到这个ApplicationContext对象,以便于能够使用Spring提供的各种服务。本文将详细介绍Spring中获取ApplicationContext对象的工具类实现方法。 在Spring中,典型的获取...

    Spring中ApplicationContext加载机制

    ApplicationContext 是 Spring 框架中的核心组件之一,负责加载和管理应用程序中的 Bean 对象。在 Web 应用程序中,ApplicationContext 的加载机制是非常重要的, Spring 提供了多种方式来加载 ApplicationContext。...

    Java获取Spring中配置的Bean的三种方式

    在Java编程中,Spring框架是应用广泛的企业级开发工具,它提供了一种强大的依赖注入机制,使得开发者可以方便地管理并获取容器中的Bean。本文将详细介绍在Spring框架中获取配置Bean的三种主要方法。 1. **通过...

    Web项目中获取SpringBean与在非Spring组件中获取SpringBean.pdf

    总的来说,获取非Spring管理组件中的SpringBean主要有两种方式:一是通过实现`ApplicationContextAware`接口并存储ApplicationContext,二是使用注解和静态内部类来注入BeanFactory。这两种方法都是Spring框架提供的...

    Spring中ApplicationContext和beanfactory区别.rar

    在Spring框架中,ApplicationContext和BeanFactory是两种不同的bean容器,它们各自有其特性和应用场景,理解二者的区别对于深入学习和使用Spring至关重要。 首先,BeanFactory是Spring中最基础的bean管理容器,它...

    普通类调用Spring bean对象

    这样,我们就能在普通类中获取到Spring管理的bean实例。 2. **@Autowired**:如果普通类也是Spring的一部分,即它也被Spring管理,那么可以使用注解`@Autowired`来自动装配bean。这样,Spring会自动找到类型匹配的...

    在非spring注解类中使用spring容器中的bean_普通类中使用yml配置文件中的配置信息

    要从一个非Spring管理的类中获取Bean,我们需要先创建或获取`ApplicationContext`实例。有多种方式可以做到这一点,例如: 1. 通过`ClassPathXmlApplicationContext`或`FileSystemXmlApplicationContext`加载XML...

    java中获得spring中的BEAN

    本文将深入探讨如何在Java中获取Spring容器中的Bean,并通过具体的示例来讲解这一过程。 ### Spring框架概述 Spring框架是由Rod Johnson创建的一个开源项目,旨在简化Java企业级应用程序的开发。Spring的核心特性...

    Spring如何获取Bean

    在 Spring 框架中,我们可以通过 XML 配置文件来配置 Bean,然后使用 ApplicationContext 来获取这些 Bean。这种方式是最常用的方式之一。我们可以在 XML 配置文件中定义 Bean,然后使用 ...

    线程中获取spring 注解bean

    当需要在线程中获取Spring注解的bean时,有几种常见的方法: 1. **ThreadLocal**:Spring提供了一种名为`ThreadLocalTargetSource`的特殊`TargetSource`实现,可以将bean实例绑定到当前线程。这样,每个线程都有其...

    spring 获得applicationcontext公用方法

    在Spring框架中,`ApplicationContext`是一个非常重要的接口,它提供了加载和管理Bean定义,以及获取Bean实例的功能。本文将深入探讨如何在Spring中获取`ApplicationContext`的公用方法,并结合提供的两个文件名`...

    解析Java中如何获取Spring中配置的bean

    本文将深入探讨如何在Java程序中获取Spring框架中配置的bean。 首先,我们来理解一下Spring框架的基本概念。Spring是一个轻量级的框架,其核心特性包括控制反转(Inversion of Control, IoC)和面向切面编程...

    spring运行过程中动态注册bean

    在Spring框架中,动态注册Bean是一项非常实用的功能,它允许我们在应用运行时向Spring容器添加新的Bean定义。这种能力在很多场景下都是极其有用的,比如根据不同的环境配置加载不同的服务实现,或者在运行时根据某些...

    在Servlet直接获取Spring框架中的Bean.docx

    需要注意的是,这两种方法都依赖于Spring容器已经初始化,并且Bean已经被加载到ApplicationContext中。通常,这会在Servlet容器启动时由Spring的`ContextLoaderListener`或`DispatcherServlet`完成。如果在Spring...

    41. Spring Boot 使用Java代码创建Bean并注册到Spring中【从零开始学Spring Boot】

    Spring通过Bean工厂和ApplicationContext来实现这一功能。 在Java代码中创建Bean,我们需要创建一个类,并使用`@Component`、`@Service`、`@Repository`或`@Controller`注解来标记。这些注解都是Spring的@...

    Java获取Bean的几种方式.pdf

    在Java开发中,特别是在Spring框架下,管理Bean是核心任务之一。本文主要探讨了Java获取Bean的多种方式,尤其在Spring Boot和IOC(控制反转)环境下。这些方式可以帮助开发者便捷地从Bean容器中检索和使用所需的Bean...

    三、Spring源码分析——ApplicationContext

    ApplicationContext是Spring框架中的核心组件之一,它是Bean工厂的高级形式,提供了更多企业级的功能。在这个主题中,我们将深入探讨ApplicationContext的内部机制和关键功能。 ApplicationContext的主要职责是加载...

    获取spring容器的方法

    在Web环境中,Spring提供了更便捷的方式来获取`ApplicationContext`,即通过`ServletContext`。这尤其适用于Spring MVC或Spring Boot这样的Web应用。可以通过以下方式获取: ```java import org.springframework....

    spring中通过ApplicationContext getBean获取注入对象的方法实例

    综上所述,通过`ApplicationContext`的`getBean`方法,我们可以方便地在Spring应用中获取到任何已注册的Bean,而无需直接依赖于Spring容器。这种方式使得我们的代码更加解耦,易于维护。同时,通过实现`...

Global site tag (gtag.js) - Google Analytics