`
xian_hf
  • 浏览: 8364 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

如何不通过依赖注入获取spring环境中的Bean

阅读更多
package com.zhanghf.yourproject.bean.utils;

import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.BeanFactoryAware;

public class SpringBeanUtils implements BeanFactoryAware {
	private static BeanFactory beanFactory = null; 
    private static SpringBeanUtils beanUtils = null;

		public void setBeanFactory(BeanFactory beanFactory) throws BeansException {
			this.beanFactory=beanFactory;
		}
	
		public  BeanFactory getBeanFactory() {
			return beanFactory;
		}
		
		public static SpringBeanUtils getInstance() {
	        if (beanUtils == null)
	        	beanUtils = (SpringBeanUtils) beanFactory.getBean("beanUtils");
	        return beanUtils;
	    }
		
	   public static Object getBean(String beanName) {
	        return beanFactory.getBean(beanName);
	    }
	
	    public static Object getBean(String beanName, Class clazz) {
	        return beanFactory.getBean(beanName, clazz);
	    }

}

<bean id="springBean" class="com.zhanghf.projectName.utils.SpringBeanUtils">
</bean>

SpringBeanUtils.getInstance().getBean("XXBeanName")
分享到:
评论

相关推荐

    spring依赖注入bean

    综上所述,Spring 的依赖注入和 Bean 管理不仅限于 Web 应用,也可以方便地应用于 Java Application 中,通过 XML 或注解配置来实现组件间的解耦,提高代码质量。这个示例项目 `test` 可能包含了实现上述功能的代码...

    线程中获取spring 注解bean

    在Spring框架中,注解是实现依赖注入(Dependency Injection,DI)的重要手段,极大地简化了代码的编写和管理。线程中的操作往往涉及到多线程环境下的资源共享和管理,因此,如何在线程中正确地获取并使用Spring通过...

    Spring定义bean的三种方式和自动注入

    这种方式需要Bean有对应的setter方法,以便Spring进行依赖注入。 ```xml &lt;bean id="student" class="test.Student"&gt; 张三"/&gt; &lt;/bean&gt; &lt;bean id="teacher" class="test.Teacher"&gt; 李四"/&gt; &lt;/bean&gt; ``` 2....

    spring依赖注入底层详解

    在Spring中,依赖注入可以通过构造器注入、设值注入和接口注入三种方式实现。 1. 构造器注入:通过在类的构造函数中传递依赖对象来完成注入。这种方式在创建对象时就确保了所有依赖都已就绪,适合于对象的依赖关系...

    面试官常问的spring依赖注入和bean的装配问题.pdf

    在Spring的面试中,面试官常会问到关于依赖注入和Bean装配的问题。理解这些概念对于开发高质量的Spring应用程序至关重要。 首先,我们来讨论一下Spring中常见的依赖注入方式。 1. setter注入(Setter-based ...

    spring中的bean

    Spring框架通过提供依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)等特性,简化了应用程序的复杂性。在本篇中,我们将深入探讨"Spring中的Bean"这一主题,包括Bean的定义...

    spring依赖注入

    在Spring中,依赖注入主要有三种方式:构造器注入、setter注入和接口注入。构造器注入是在对象实例化时通过构造函数传入依赖;setter注入则是通过调用对象的setter方法来设置依赖;接口注入则相对较少使用,它通过...

    Spring-注入依赖,AOP,自动注入Bean

    在Spring框架中,依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)是两大核心特性,同时自动注入Bean也是Spring管理对象的一种常见方式。让我们深入探讨这些概念。 首先,...

    Java中Spring获取bean方法小结

    - **通过代码注解**:Spring也支持通过注解来获取Bean,如`@Autowired`和`@Resource`,它们能够自动将依赖注入到目标字段或方法中,无需手动从ApplicationContext获取。 3. **静态Singleton Bean Manager** 通常...

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

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

    spring依赖注入三种方式 测试源码

    通过阅读和理解这些源码,你可以更深入地了解Spring依赖注入的工作原理及其在项目中的具体使用。 在进行依赖注入时,Spring使用BeanFactory或ApplicationContext作为容器,负责创建、管理和装配Bean。容器读取配置...

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

    本文将深入探讨Spring中的依赖注入实现方式,以及如何通过样例文件`sample-autoconfig`进行理解和实践。 一、XML配置的依赖注入 在Spring早期版本中,XML配置是最常见的DI方式。开发者在Spring的配置文件(如`...

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

    总之,在Servlet中直接获取Spring的Bean可以帮助简化代码,减少重复的工作,并利用Spring的依赖注入能力。然而,这种方式应该谨慎使用,因为它可能破坏了依赖注入的初衷,使得代码更难测试和维护。在可能的情况下,...

    通过@Autowired注解注入bean的顺序,以及@bean注入.rar

    在Spring框架中,依赖注入(Dependency Injection,DI)是一种核心特性,它允许我们解耦组件,使得代码更易于测试和维护。`@Autowired`和`@Bean`是两个关键注解,它们在实现DI时起着重要作用。让我们深入探讨这两个...

    spring依赖注入的实现原理

    Spring依赖注入(Dependency Injection,简称DI)是Java应用开发中的一个重要概念,它是Spring框架的核心特性之一,用于降低组件之间的耦合度,提高代码的可测试性和可维护性。本篇文章将深入探讨Spring依赖注入的...

    Spring Ioc 注解 依赖注入

    - **依赖注入**:依赖注入是一种设计模式,通过依赖注入,一个类的对象不再负责创建其依赖的对象,而是由外部容器(Spring容器)来负责创建这些依赖并注入到需要它们的地方。 #### 三、Spring IoC容器的工作原理 ...

    详解Spring 中如何控制2个bean中的初始化顺序

    Spring 中的 DependsOn 注解可以保证被依赖的 bean 先于当前 bean 被容器创建。例如,在 B 上加上注解 @DependsOn({"a"}),这样可以保证 A 先于 B 被初始化。 需要注意的是,bean 属性的注入是在初始化方法调用之前...

    Spring依赖注入检查.

    Spring依赖注入是Spring框架的核心特性之一,它极大地简化了Java应用程序的开发,...通过阅读《dependencyCheck》这个压缩包中的文件,初学者可以进一步了解和实践Spring的依赖注入概念,从而加深对Spring框架的理解。

    Spring Bean创建初始化流程.docx

    在`doCreateBean()`方法中,Spring会创建Bean的实例,`createBeanInstance(beanName, mbd, args)`执行Bean实例的创建,而`populateBean(beanName, mbd, instanceWrapper)`则负责填充Bean的属性,将依赖注入到Bean中...

Global site tag (gtag.js) - Google Analytics