03-Spring的IOC示例程序(通过类型获取对象)

Posted 琥珀呀

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了03-Spring的IOC示例程序(通过类型获取对象)相关的知识,希望对你有一定的参考价值。

根据bean类型从IOC容器中获取bean的实例

①test测试类

@Test
public void Test02() {
    //获取spring容器对象
    ApplicationContext applicationContext = new ClassPathXmlApplicationContext("application.xml");
    //根据id获取bean对象
    Person person2 = applicationContext.getBean(Person.class);
        System.out.println(person2);
    }

②xml文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!--
    bean标签: 用于配置一个组件对象(javaBean,dao,service)
    id: bean对象唯一的标识,不可重复,否则报错xml编译错误
    class: bean对象的全类名
    property标签: 配置属性信息
    name: 属性名
    value: 属性值
    
 -->
<!-- <bean id="p1" class="cn.aynu.pojo.Person">
    <property name="id" value="1001"/>
    <property name="name" value="琥珀"/>
    <property name="phone" value="18337280000"/>
    <property name="age" value="18"/>
</bean> -->
运行的时候需要将p1注释掉,否则报错
<bean id="p2" class="cn.aynu.pojo.Person">
    <property name="id" value="1001"/>
    <property name="name" value="琥珀"/>
    <property name="phone" value="18337280000"/>
    <property name="age" value="18"/>
</bean>

</beans>

常见错误(在applicationContext.xml配置文件中,有多个同Person.class类型实现的时候)

技术图片

 

以上是关于03-Spring的IOC示例程序(通过类型获取对象)的主要内容,如果未能解决你的问题,请参考以下文章

阶段3 2.Spring_03.Spring的 IOC 和 DI_1 ioc的概念和作用

Java实战之03Spring-02Spring的核心之IoC

阶段3 2.Spring_03.Spring的 IOC 和 DI_2 spring中的Ioc前期准备

阶段3 2.Spring_03.Spring的 IOC 和 DI_4 ApplicationContext的三个实现类

IOC 控制反转Android 事件依赖注入 ( 事件依赖注入代码示例 )

阶段3 2.Spring_03.Spring的 IOC 和 DI_5 BeanFactory和ApplicationContext的区别