Spring日常笔记记录02--获取容器中对象信息

一个bean标签对应一个对象,bean标签中的id值要唯一

    <bean id="someService" class="com.example.service.impl.SomeServiceImpl"/>

    <bean id="someService01" class="com.example.service.impl.SomeServiceImpl"/>

 

spring默认创建对象的时候:在创建spring容器时,会创建配置文件中的所有对象

    @Test
    /*
    * spring默认创建对象的时候:在创建spring容器时,会创建配置文件中的所有的对象
    * */
    public void test02(){
        //使用spring容器创建的对象
        //1.指定spring 配置文件的名称
        String config = "beans.xml";
        //2.创建表示spring容器的对象,ApplicationContext
        //ApplicationContext就是表示spring容器,通过容器获取对象
        //ClassPathXmlApplicationContext:表示从类路径中加载spring的配置文件
        ApplicationContext ac = new ClassPathXmlApplicationContext(config);

        //从容器中获取某个对象,你要调用对象的方法
        //getBean("配置文件中的bean的id值")
        //SomeService service = (SomeService) ac.getBean("someService");

        //使用spring创建好的对象
        //service.doSome();
    }


运行结果:

SomeServiceImpl的无参构造方法
SomeServiceImpl的无参构造方法

 

获取容器对象信息的两种常用方法

    @Test
    public void test03(){
        String config = "beans.xml";
        ApplicationContext ac = new ClassPathXmlApplicationContext(config);
        //使用spring提供的方法,获取容器中定义的对象的数量
        int nums = ac.getBeanDefinitionCount();
        System.out.println("容器中定义的对象数量"+nums);

        //容器中每个定义的对象的名称
        String names[] = ac.getBeanDefinitionNames();
        for(String name:names){
            System.out.println(name);
        }
    }

运行结果:

SomeServiceImpl的无参构造方法
SomeServiceImpl的无参构造方法
容器中定义的对象数量2
someService
someService01

 

 

上一篇:快乐的一天从AC开始 | 20210708 | P4462


下一篇:springboot 整合 mybatis plus -- 树状图