首页 > 其他分享 >12. Bean 获取,作用域,管理

12. Bean 获取,作用域,管理

时间:2023-06-24 23:47:06浏览次数:29  
标签:容器 12 作用域 bean saxReader Bean IOC public

  1. Bean 获取,作用域,管理

默认情况下,spring项目启动时,会把bean都创建好放在IOC容器中,如何想主动获取这些bean,可以通过如下方式获取:getBean()

@Autowired
private ApplicationContext applicationContext;//IOC容器对象

类名  lei=(类名)applicationContext.getBean("类名");

@Singleton bean默认是单列的,在容器启动时被创建,可以使用@Lazy注解延迟初始化
@Scope("prototype")

---------------------------------声明第三方bean,获取bean-------------------------------

在类上添加@Component 注解来注入IOC容器,但是对应引入的第三方包不能修改怎么注入呢?用@Bean

@SpringBootApplication
public class SpringbootAopQuickstartApplication {
    public static void main(String[] args) {
        SpringApplication.run(SpringbootAopQuickstartApplication.class, args);
    }

//声明第三方bean 
    @Bean //将方法返回值交给IOC容器管理,成为IOC容器的bean对象(第3方包)
    public SAXReader saxReader(){
        return new Saxreader();
    }
}

---------------------------------声明第三方bean,获取bean-------------------------------

@Configuration
public class CommonConfig {
 
//声明第三方bean 
    @Bean //将方法返回值交给IOC容器管理,成为IOC容器的bean对象(第3方包)
    public SAXReader saxReader(){    //saxReader 方法名是bean对象
        return new Saxreader();
    }
}



    @Test
    public void testGetBean(){
        Object saxReader=applicationContext.getBean("reader");
        System.out.println(saxReader);
    }

注解注入IOC容器:

@Component
@Controller
@Service
@Repository

标签:容器,12,作用域,bean,saxReader,Bean,IOC,public
From: https://www.cnblogs.com/chenshaojun2008/p/17501880.html

相关文章

  • 【雕爷学编程】Arduino动手做(124)---24位WS2812环形灯板
    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞......
  • AtCoder Beginner Contest 212(E,F)
    AtCoderBeginnerContest212(E,F)E(dp)E题目大意为有\(n\)个点,我们需要找到\(k+1\)个点,用数组\(A\)表示,其中,\(A_i\)和\(A_{i+1}\)也不能一模一样,而且,规定\(A_0\)是\(1\),并且\(A_k\)也是\(1\),而且,还要满足下面的\(m\)种条边是不可以代表为\(A_i\)和\(A_{i+1}\),问我们可以......
  • day112 - mybatis的查询与特殊sql语句
    mybatis查询与特殊语句查询普通语句/***根据id查询用户信息*@paramid*@return*/UsergetUserById(@Param("id")Integerid);​<!--UsergetUserById(@Param("id")Integerid);--><selectid="getUserById"resultType="com.......
  • 8. IOC & DI注解开发管理第三方bean
    ‍1.注解开发管理第三方bean‍在上述环境中完成对​Druid​数据源的管理,具体的实现步骤为:步骤1:导入对应的jar包<dependency>  <groupId>com.alibaba</groupId>  <artifactId>druid</artifactId>  <version>1.1.16</version></dependency>步骤2:在......
  • Day1-01_12:
    【安装虚拟机】1.下载,安装https://www.virtualbox.org安装要开CPU虚拟2.app.vagrantup.com下镜像https://www.vagrantup.com/3.安装好vagrantup后,cmd命令:vagrantinitcentos/7vagrantupvagrantreload进入虚拟机:vargrangtsshexit(退出)【linux常用命令】whoamils/根......
  • spring框架的BeanFactory
    spring框架的BeanFactorySpring框架中的BeanFactory是一个核心接口,用于管理应用程序中的对象(即"Bean")。它是SpringIoC(控制反转)容器的基础,并提供了创建、获取和管理Bean的功能。BeanFactory的主要职责包括:实例化Bean:BeanFactory根据配置信息或注解定义,创建应......
  • 1、BeanFactory.getBean 总览
    一句话概括本文以走马观花的姿态,简单分析了一波spring容器创建bean的大致环节,后续将通过单独的文章进行细讲其中的没个环节。本文将包含后文的链接,根据感兴趣的内容自取即可。1书接上回我们已经知道了spring是怎么解析标签的。现在我们解析完标签并注册到BeanFactoryReg......
  • 5. IOC DI配置管理第三方bean
    1.1案例:数据源对象管理在这一节中,我们将通过一个案例来学习下对于第三方bean该如何进行配置管理。以后我们会用到很多第三方的bean,本次案例将使用咱们前面提到过的数据源​Druid(德鲁伊)​和C3P0​来配置学习下。1.1.1环境准备学习之前,先来准备下案例环境:创建一......
  • ElasticSearch依赖(7.12.1)【ElasticSearch】
    <!--ES依赖--><dependency><groupId>org.elasticsearch.client</groupId><artifactId>elasticsearch-rest-high-level-client</artifactId><!--忽略掉冲突的依赖-->......
  • Spring 中的 Bean
    前言欢迎来到本篇文章,鸽了好久了,今天继续写下Spring的内容:Spring中Bean的基本概念、基本写法和3种实例化Bean的方式等。什么是Bean?我们回顾下,什么是Bean?这在上一篇文章Spring核心概念之一IoC中说过了,简而言之,一句话:被SpringIoC管理的对象,就是Bean。一个Sp......