Spring中给IOC容器赋值的4种方法

要导入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容器

?xml version="1.0" encoding="UTF-8"?>
<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);
 }
上一篇:第七周


下一篇:关于 IDEA2021 创建application.yaml 配置文件