1.Spring_IOC概念引入
控制反转
2.Spring_IOC代码测试
IOC代码演示
控制反转:就是创建对象的权力交给了容器
1.创建一个接口,定义一个抽象方法
package org.example; public interface Empdao { int addemp(); }
2.创建一个实现类,实现这个接口
package org.example.impl; import org.example.Empdao; public class EmpDaoImpl implements Empdao { @Override public int addemp() { System.out.println("first"); return 0; } }
3.设置spring.xml文件:利用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"> <bean id="empDao" class="org.example.impl.EmpDaoImpl"/> </beans>
4.创建测试类:
ApplicationContext:获取容器,是一个接口
在这个接口下有一个实现类ClassPathXmlApplication。之后这个容器要读配置文件spring.xml文件。直接将spring文件传入,读取出来放入这个容器里面。
然后从这个容器对象中调用getBean的方法,在这里显示Bean的id,通过id来过去类的对象。但是getBean这个方法返回的是Object类型的数据,所以需要进行类型转换,可以直接在后面进行类型的转换。
package org.example; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class test1 { public static void main(String[] args) { ApplicationContext applicationContext = new ClassPathXmlApplicationContext("spring.xml"); Empdao empdao = applicationContext.getBean("empDao",Empdao.class); empdao.addemp(); } }
3.Spring_IOC实现原理
【1】XML解析技术读取配置文件
【2】反射技术实例化对象,放到容器中
【3】工厂模式返回Bean对象getBean方法
4.Spring_IOC和DI概念解释
5.Spring_bean标签属性简介
IOC创建对象
1.通过无参构造方法构造对象
<bean id="user1" class="org.example.User" ></bean>
<bean>标签的常见属性