一、spring是怎么工作的那,通过一个类装载进容器进行描述:
首先创建一个类user:
package cn.itcast.bean; public class User { public User() { System.out.println(""); } private String name; private Integer age; public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } }
将user加入到容器中,创建一个applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd "> <!--将User对象交给Spring容器管理 --> <!--Bean元素:使用该元素描述需要Spring容器管理的对象 class属性:被管理对象的完整类名 name属性:给被管理的对象起一个名字,获得对象时根据该名称获得对象 可以重复,可以使用特殊字符 id属性:与name属性一模一样 名称不可重复,不能使用特殊字符 结论:尽量使用name属性。 --> <!-- 空参构造方式 --> <bean name="user" class="cn.itcast.bean.User"></bean> <!-- P名称空间注入 <bean name="user" class="cn.itcast.bean.User" p:name="jake" p:age="20"> </bean> --> </beans>
再对容器中是否加入user类进行测试:
package cn.itcast.hello; import org.junit.Test; import org.springframework.context.support.ClassPathXmlApplicationContext; public class Demo { @Test public void fun1() { //1、创建容器对象 ClassPathXmlApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml"); //2、向容器“要”user对象 Object bean = ac.getBean("user"); //3、打印user对象 System.out.println(bean); } }
输出结果;
cn.itcast.bean.User@670b40af
说明将在容器中注入user类成功