三IOC操作Bean管理
Posted 上善若水
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了三IOC操作Bean管理相关的知识,希望对你有一定的参考价值。
1.什么是Bean管理
- Bean管理指的是两个操作
- Spring创建对象
- Spring注入属性
2.Bean管理操作有两种方式
- 基于xml配置文件方式实现
- 基于注解方式实现
IOC操作Bean管理(基于xml方式)
-
基于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"> <!-- 配置User对象创建 --> <bean id="user" class="com.deewinkg.spring5.User"></bean> </beans>
- 在Spring配置文件中,使用bean标签,标签里面添加对应属性,就可以实现对象创建
- 在bean标签有很多属性,介绍常用到的属性
- id属性:唯一标识
- class属性:类全路径(包类路径)
- 创建对象时候,默认也是执行无参数构造方法完成对象创建
-
基于xml方式注入属性
- DI:依赖注入,就是注入属性
-
第一种注入方式:使用set方式进行注入
- 创建类,定义属性和对应的set方法
package com.deewinkg.spring5; /** * 演示使用 set 方法进行注入属性 */ public class Book { // 创建属性 private String bname; private String bauthor; // 创建属性对应的 set 方法 public void setBname(String bname) { this.bname = bname; } public void setBauthor(String bauthor) { this.bauthor = bauthor; } }
- 在spring配置文件配置对象创建,配置属性注入
<?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"> <!-- set 方法注入属性 --> <bean id="book" class="com.deewinkg.spring5.Book"> <!-- 使用 property 完成属性注入 name:类里面属性名称 value:向属性注入的值 --> <property name="bname" value="易筋经"/> <property name="bauthor" value="达摩祖师"/> </bean> </beans>
-
第二种注入方式:使用有参数构造进行注入
- 创建类,定义属性,创建属性对应有参数构造方法
package com.deewinkg.spring5; /** * 使用有参数构造注入 */ public class Orders { // 属性 private String oname; private String address; // 有参构造方法 public Orders(String oname, String address) { this.oname = oname; this.address = address; } }
- 在spring配置文件中进行配置
<?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 id="orders" class="com.deewinkg.spring5.Orders"> <constructor-arg name="oname" value="电脑"></constructor-arg> <constructor-arg name="address" value="中国"></constructor-arg> </bean> </beans>
-
p 名称空间注入(了解)
-
使用P名称空间注入,可以简化基于xml配置方式
第一步 添加P名称空间在配置文件中
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> </beans>
第二步 进行属性注入,在bean标签里面进行操作
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- set 方法注入属性 --> <bean id="book" class="com.deewinkg.spring5.Book" p:bname="九阳神功" p:bauthor="无名氏"></bean> </beans>
-
以上是关于三IOC操作Bean管理的主要内容,如果未能解决你的问题,请参考以下文章
Spring5学习笔记 — “IOC操作Bean管理(基于注解)”