Spring-day02 基于xml的DI
1.注入的分类
bean 实例在调用无参构造器创建对象后,就要对 bean 对象的属性进行初始化。初始化 是由容器自动完成的,称为注入。 根据注入方式的不同,常用的有两类:set 注入、构造注入。
1.1 set注入(掌握)
set 注入也叫设值注入是指,通过 setter 方法传入被调用者的实例。这种注入方式简单、 直观,因而在 Spring 的依赖注入中大量使用。
-
简单类型的注入
需要有set方法,没有set方法是报错的。 Bean property 'name' is not writable or has an invalid setter method
- 项目结构如下:
-
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"> <!--声明student对象 注入:就是赋值的意思 简单类型: spring中规定java的基本数据类型和String都是简单类型。 di:给属性赋值 1. set注入(设值注入) :spring调用类的set方法, 你可以在set方法中完成属性赋值 1)简单类型的set注入 <bean id="xx" class="yyy"> <property name="属性名字" value="此属性的值"/> 一个property只能给一个属性赋值 <property....> </bean> --> <bean id="myStudent" class="com.bjpowernode.ba01.Student" > <property name="name" value="李四lisi" /><!--setName("李四")--> <property name="age" value="22" /><!--setAge(21)--> <property name="email" value="lisi@qq.com" /><!--setEmail("lisi@qq.com")--> </bean> <bean id="mydate" class="java.util.Date"> <property name="time" value="8364297429" /><!--setTime(8364297429)--> </bean> </beans>
-
最终运行结果如下: