Spring Ioc(依赖注入)
Spring 依赖注入
导入相关依赖
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.3.20</version>
</dependency>
</dependencies>
编写类
public class Girl {
private String name;
@Override
public String toString() {
return "Girl{" +
"name='" + name + '\'' +
'}';
}
public Girl(String name) {
this.name = name;
}
}
public class Hero {
private int age;
private String name;
private List<String> happy;
private String[] Address;
private Map<String,String> city;
private Girl love;
@Override
public String toString() {
return "Hero{" +
"age=" + age +
", name='" + name + '\'' +
", happy=" + happy +
", Address=" + Arrays.toString(Address) +
", city=" + city +
", love=" + love +
'}';
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public List<String> getHappy() {
return happy;
}
public void setHappy(List<String> happy) {
this.happy = happy;
}
public String[] getAddress() {
return Address;
}
public void setAddress(String[] address) {
Address = address;
}
public Map<String, String> getCity() {
return city;
}
public void setCity(Map<String, String> city) {
this.city = city;
}
public Girl getLove() {
return love;
}
public void setLove(Girl love) {
this.love = love;
}
}
编写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="girl" class="com.Girl">
<constructor-arg name="name" value="小花"></constructor-arg>
</bean>
<bean id="hero" class="com.Hero" >
<property name="age" value="10"/>
<property name="address">
<array>
<value>北京</value>
<value>上海</value>
<value>南京</value>
</array>
</property>
<property name="city">
<map>
<entry key="中国">
<value>南京</value>
</entry>
<entry key="美国">
<value>曼哈顿</value>
</entry>
</map>
</property>
<property name="happy">
<list>
<value>足球</value>
<value>电脑</value>
<value>游戏</value>
<value>音乐</value>
</list>
</property>
<!--引用其他bean对象-->
<property name="love" ref="girl"/>
<property name="name" value="小明"/>
</bean>
</beans>
程序测试
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Test {
public static void main(String[] args) {
//加载 spring配置文件
ClassPathXmlApplicationContext xml =
new ClassPathXmlApplicationContext("beans.xml");
// 根据id 获取bean对象
Hero hero = xml.getBean("hero", Hero.class);
System.out.println(hero);
}
}
程序结果
Hero{age=10, name='小明', happy=[足球, 电脑, 游戏, 音乐], Address=[北京, 上海, 南京], city={中国=南京, 美国=曼哈顿}, love=Girl{name='小花'}}

浙公网安备 33010602011771号