要导入Spring的五个架包哦!
UserBean代码如下:
public class UserBean {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public UserBean(String name, int age) {
super();
this.name = name;
this.age = age;
}
public UserBean() {
super();
}
@Override
public String toString() {
return "UserBean [name=" + name + ", age=" + age + "]";
}
IOC容器
<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">
<!-- 开始注册的第1个方法 -->
<bean id="user1" class="edu.jmi.bean.UserBean" abstract="true">
<property name="name" value="唐啊"></property>
<property name="age" value="20"></property>
</bean> <!-- 开始注册的第2个方法 通过构造器的方法赋值 顺序不一致可以写name来赋值 默认按顺序-->
<bean id="user2" class="edu.jmi.bean.UserBean">
<constructor-arg value="高啊"></constructor-arg>
<constructor-arg value="20"></constructor-arg>
</bean> <!-- 开始注册的第3个方法 通过p空间赋值 注意要在namespaces里面打开p空间 -->
<bean id="user3" class="edu.jmi.bean.UserBean" p:name="唐啊" p:age="13">
</bean> <!-- 开始注册的第4个方法 通过配置实现继承信息的重用 parent=“user1” class可以省略 abstract="true"可以继承不可以获取 -->
<bean id="user4" parent="user1"></bean>
</beans> Test文件 测试 @Test
public void test() {
// 第一步、获取IOC容器 后面是IOC容器的名字
ApplicationContext ioContext = new ClassPathXmlApplicationContext("IOC.xml");
// 第二步、获取ioc对象 1、通过id
// UserBean bean = (UserBean) ioContext.getBean("user1");
// 2、 通过bean的类型 // StuentBean bean = iocContext.getBean(StudentBean.class);
StudentBean bean= (StudentBean) ioContext.getBean("user4");
// 第三步、输出
System.out.println(bean);
}