Spring学习笔记(三):IOC基于XML配置文件方式操作Bean管理

本文详细介绍了Spring框架中基于XML配置文件的IOC(控制反转)操作,包括Bean管理的概念、XML配置文件创建对象及属性注入的三种方式(set方法、构造器、p名称空间)。此外,还讲解了注入空值、特殊符号、外部Bean、内部Bean、级联赋值、集合属性等特性的实现方法,并探讨了FactoryBean、Bean的作用域、生命周期以及XML自动装配和外部属性文件的应用。
摘要由CSDN通过智能技术生成

1>IOC操作Bean管理

1.Bean管理概念

  ⑴Bean管理指的是两个操作

      ①Spring创建对象

      ②Spring注入属性:给对象的属性赋值

  ⑵Bean管理操作有两种方式

      ①基于XML配置文件方式实现

      ②基于注解方式实现

2.IOC 操作 Bean 管理:基于XML配置文件方式操作Bean管理

  ⑴XML文件配置Bean文件管理

      ①<bean id="user" class="com.company.spring5.User"></bean>

  ⑵基于XML方式DI(Dependency Injection)依赖注入属性

  ⑶注入方式一:使用set方法进行属性注入

      ①创建Bean类,定义属性和对应的set方法

      ②在Spring XML配置文件配置对象创建的方式,配置属性注入的值

<!--bean标签配置Bean文件地址-->
<bean id="user" class="com.company.spring5.User">
    <!--使用set方法注入属性,name属性:类中的属性的名称,
     value属性:注入属性的值-->
    <property name="name" value="王霏霏"></property>
</bean>

  ⑷ 注入方式二:使用有参构造方法进行属性注入

      ①创建Bean类,定义属性,创建属性对应的有参数的构造方法

      ②在Spring XML配置文件配置有参构造器的调用方式

<bean id="user" class="com.company.spring5.User">
    <constructor-arg name="name" value="王自健"></constructor-arg>
</bean>

  ⑸注入方式三:p名称空间注入
      ①在Spring XML配置文件的标签配置中配置p空间的使用

      ②属性注入

<!--p空间注入使用无参构造器-->
<bean id="user" class="com.company.spring5.User" p:name="章子怡"></bean>

2>基于XML配置文件方式实现IOC:注入属性类型介绍

  ⑴注入空值和特殊符号
      ①使用标签null赋空值

<property name="name"><null/></property>

      ②使用CDATA来赋特殊值,标识CDATA内的内容是值不是特殊符号

<property name="name"><value><![CDATA[<<北京>>]]]></value></property>

  ⑵注入属性—外部Bean
      ①注入外部Bean类的意思是,该Bean类有一个属性指向另一个Bean类,在注入时调用XML文件中此Bean类外部配置好的Bean类

      ②依赖Set方法注入或者依赖有参构造器注入

<!--3.注入外部Bean-->
<bean name="DaoService" class="com.company.spring5.DaoService">
    <!--name:标识Service类中该属性的名称-->
    <!--ref:标识外部Bean的name值,XML文件依赖这个属性注入外部Bean-->
    <property name="dao" ref="Dao"></property>
</bean>
<bean name="Dao" class="com.company.spring5.DaoImpl"></bean>

  ⑶注入属性—内部Bean
      ①注入内部Bean类的意思是,该Bean类有一个属性指向另一个Bean类,在注入时直接在该Bean类的该属性处配置调用的Bean类,依赖该Bean类的注入方式内部注入

<bean id="student" class="com.company.spring5.Student">
    <property name="sname" value="lucy"></property>
    <property name="age" value="17"></property>
    <!--注入内部Bean-->
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值