我还是在跟着狂神来学习Spring5
1.构造器注入
2.Set方式注入【重点】
3.扩展方式注入
我在这里记录一下set依赖注入的步骤吧
Set方式注入:
分为依赖:bean对象的创建依赖于容器 注入: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"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="address" class="org.example.pojo.Address">
<property name="address" value="河北石家庄"></property>
</bean>
<bean id="student" class="org.example.pojo.Student">
<!--第一种,普通值注入:value-->
<property name="name" value="yezhaoxin"></property>
<!--第二种,Bean注入:ref-->
<property name="address" ref="address"></property>
<!--第三种,数组注入:方式1.array-->
<property name="books">
<array>
<value>1.数组注入</value>
<value>2.通过array</value>
<value>3.String[] books</value>
</array>
</property>
<!--第三种,数组注入:方式2.list-->
<property name="hobbys">
<list>
<value>1.数组注入方式2</value>
<value>2.通过list</value>
<value><!--3.List<String> hobbys--></value>
</list>
</property>
<!--第三种,数组注入:方式3: Map-->
<property name="card">
<map>
<entry key="身份证" value="411525"></entry>
<entry key="银行卡" value="123456"></entry>
</map>
</property>
<!--第三种,数组注入:方式4: Set-->
<property name="game">
<set>
<value>1.数组注入方式4</value>
<value>2.通过Set</value>
<value><!--3.Set<String> game--></value>
</set>
</property>
<!--第四种,空值注入-->
<property name="wife">
<null/>
</property>
<!--特殊类型注入-->
<property name="info">
<props>
<prop key="学号">20213709</prop>
<prop key="性别">男</prop>
<prop key="姓名">小叶</prop>
</props>
</property>
</bean>
</beans>
第三步,书写测试类输出所有信息
测试结果
PS.遇到的问题
数组定义的books
但是不能使用,输出时出现这种情况
检查了一下,发现定义实体类的时候返回值出现了问题
将原本的返回这books,修改成下面图片的形式就可以了
不知道这是不是强制转换