1.容器:是一个服务器软件,一个框架(spring)
2.为什么要使用ioc:目的是减少对代码的改动,也能实现不同的功能,实现解耦合
3.java创建对象有哪些方式:
-
构造方法
-
反射
-
序列化
-
克隆
-
ioc,容器创建对象
-
动态代理
4.ioc的体现
以servlet为例 -
创建类继承HttpServlet
-
在web.xml注册servlet
<servlet-name>helloServlet</servlet-name>
<servlet-class>com.chongqing.servlet.HelloServlet</servlet-class>
- 没有创建servlet对象,没有HelloServlet=new HelloServlet()
- Servlet 是Tomact服务器创建的,Tomact也称为容器,里面存放有Servlet对象
5.ioc容器技术实现
DI是ioc的技术实现
DI(Dependency Injection)依赖注入,只需要在程序中提供要使用的对象名称就可以,至于对象如何在容器中创建、赋值、查找都由容器内部实现
6.spring使用di实现了ioc的功能,spring底层创建对象,使用的是反射机制