`

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

 
阅读更多
一、什么是Spring?
Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架

二、如何在程序中获取Spring配置的bean呢?
方法一:在初始化时保存ApplicationContext对象
代码:


复制代码 代码如下:
ApplicationContext ac = new FileSystemXmlApplicationContex("applicationContext.xml");
    ac.getBean("beanId");

说明:这种方式适用于采用Spring框架的独立应用程序,需要程序通过配置文件手工初始化Spring的情况。

方法二:通过Spring提供的工具类获取ApplicationContext对象
代码:


复制代码 代码如下:
import org.springframework.web.context.support.WebApplicationContextUtils;
    ApplicationContext ac1 = WebApplicationContextUtils
                               .getRequiredWebApplicationContext(ServletContext sc)
    ApplicationContext ac2 = WebApplicationContextUtils
                               .getWebApplicationContext(ServletContext sc)
    ac1.getBean("beanId");
    ac2.getBean("beanId");

方法三:继承自抽象类ApplicationObjectSupport
说明:抽象类ApplicationObjectSupport提供getApplicationContext()方法,可以方便的获取到ApplicationContext。Spring初始化时,会通过该抽象类的setApplicationContext(ApplicationContext context)方法将ApplicationContext 对象注入。

方法四:继承自抽象类WebApplicationObjectSupport
说明:类似方法三,调用getWebApplicationContext()获取WebApplicationContext

方法五:实现接口ApplicationContextAware
说明:实现该接口的setApplicationContext(ApplicationContext context)方法,并保存ApplicationContext 对象。Spring初始化时,会通过该方法将ApplicationContext 对象注入。


详细出处参考:http://www.jb51.net/article/39396.htm
分享到:
评论

相关推荐

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

    本文将详细介绍在Spring框架中获取配置Bean的三种主要方法。 1. **通过ApplicationContext获取Bean** `ApplicationContext` 是Spring的核心接口之一,它提供了一个获取Bean的工厂方法。首先,我们需要创建一个`...

    Java中Spring获取bean方法小结

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

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

    虽然通常这个注解用于Spring管理的Bean,但也可以在非Spring管理的类中使用,只要确保配置的加载和绑定过程正确执行。 为了读取YAML配置,你需要在Spring Boot应用的启动类或者其他适当的初始化点,注册`@...

    spring bean XML配置入门

    在本文中,我们将深入探讨Spring框架中的Bean XML配置,这是Spring的核心特性之一,它允许我们定义、管理和装配应用中的对象。我们将围绕以下知识点展开: 1. **Spring框架基础**: Spring是一个开源的Java平台,...

    线程中获取spring 注解bean

    线程中的操作往往涉及到多线程环境下的资源共享和管理,因此,如何在线程中正确地获取并使用Spring通过注解注入的对象,是一个常见的问题。本文将详细探讨这个主题。 首先,Spring的注解主要分为三类:配置注解(如...

    spring3零配置注解实现Bean定义

    标题《spring3零配置注解实现Bean定义》中蕴含的知识点主要包括Spring框架中的Bean定义配置方法的演进,特别是从Spring 2.5到Spring 3版本的过渡过程中,对于注解方式实现Bean定义的支持如何被引入和优化。...

    java中获得spring中的BEAN

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

    使用java类配置Bean

    在Spring框架中,Bean的配置方式主要有两种:XML配置和基于Java的配置。本文将深入探讨"使用java类配置Bean"这一主题,特别是在SIA实战项目中的应用。 首先,让我们理解Spring框架的核心概念——Bean。在Spring中,...

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

    例如,假设我们有 2 个 bean A 和 B,B 加载的文件依赖 A 中加载的全局配置文件中的路径,所以需要 A 先于 B 初始化。此外,A 中的配置改变后也需要触发 B 的重新加载逻辑,所以 A 和 B 需要互相注入。 方案一:...

    Java Bean 遍历和使用注解给Bean的属性添加属性值

    在给定的标题"Java Bean 遍历和使用注解给Bean的属性添加属性值"中,我们可以深入探讨两个主要主题:Java Bean的遍历和注解的应用。 1. **Java Bean遍历**: - **反射机制**:遍历Java Bean通常涉及使用Java的反射...

    Spring的Bean配置

    2. **注解配置**:随着Java注解的发展,Spring引入了基于注解的配置,可以直接在类或方法上使用`@Component`,`@Service`,`@Repository`和`@Controller`等注解声明Bean。同时,使用`@Autowired`进行依赖注入。 3. ...

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

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

    IOC之基于Java类的配置Bean

    在配置类中,我们可以使用@Bean注解来声明一个Bean。这个注解告诉Spring这个方法会返回一个要管理的对象,就像XML中的<bean>元素一样。例如,创建一个名为`myService`的Bean: ```java @Configuration public class...

    spring中的bean

    2. **注解驱动的Bean定义**:随着Spring的发展,更多地使用注解来进行Bean的定义和配置,如`@Component`、`@Service`、`@Repository`和`@Controller`等。这些注解表明类是一个Spring Bean,同时可以配合`@Autowired`...

    Spring bean 动态注册,jar包热替换

    Spring bean 一般通过配置文件和注解进行加载,如果要实现jar或class文件,动态实现spring bean 的动态加载,并通过UrlClassLoader完成jar和class文件的加载。可以实现jar的热替换。spring的bean动态加载则需要对...

    spring自动扫描和管理Bean的示例

    在Spring框架中,自动扫描和管理Bean是一种便捷的方式,它允许开发者无需显式地在配置文件中声明每个Bean,而是让Spring容器自动发现并管理应用中的组件。这一特性极大地简化了Spring应用的配置,提高了开发效率。...

    spring IOC反射装载bean

    在这个特定的"spring IOC反射装载bean"的主题中,我们将深入探讨Spring如何通过XML配置文件来加载和管理Bean,并利用Java的反射机制来实例化这些Bean。 首先,Spring容器通过读取XML配置文件来获取Bean的定义。这些...

    Spring boot工具类静态属性注入及多环境配置详解

    在 Spring Boot中,使用@ConfigurationProperties注解可以将application.yml文件中的配置信息注入到Java类中。在上面的代码中,使用了@Component和@ConfigurationProperties注解来将application.yml文件中的配置信息...

    深入解析Java的Spring框架中的混合事务与bean的区分

    Bean在Spring中是核心组件,它代表了应用程序中的对象,可以通过配置文件、注解或者Java配置类进行定义。Bean的生命周期包括初始化、使用和销毁等阶段,Spring容器负责管理这些过程。Bean可以依赖注入其他Bean,使得...

    自定义注解得使用,模拟spring通过注解方式创建bean实例

    总结一下,自定义注解和基于注解的bean创建是Spring框架中强大的特性,它允许我们以声明式的方式定义和管理bean。通过创建自定义注解和相应的处理器,我们可以模拟Spring的行为,为应用程序提供高度定制化的bean管理...

Global site tag (gtag.js) - Google Analytics