IOC控制反转【spring核心】

举报
西红柿炒鸡蛋儿 发表于 2022/02/23 11:29:34 2022/02/23
【摘要】 Spring的第一个核心功能ioc IOC(Inversion of Control):控制反转,是一个理论,概念,思想。描述:把对象的创建,赋值,管理工作都交给代码之外的容器实现,也就是对象的创建是有其他外部资源完成。 控制:创建对象,对象的属性赋值,对象之间的关系管理反转:把原来的开发人员管理,创建对象的权限转移给代码之外的容器实现,由容器代替开发人员管理对象,创建对象,给属性赋值。正转...

Spring的第一个核心功能ioc

 IOC(Inversion of Control):控制反转,是一个理论,概念,思想。

描述:把对象的创建,赋值,管理工作都交给代码之外的容器实现,也就是对象的创建是有其他外部资源完成。

 

控制:创建对象,对象的属性赋值,对象之间的关系管理

反转:把原来的开发人员管理,创建对象的权限转移给代码之外的容器实现,由容器代替开发人员管理对象,创建对象,给属性赋值。

正转:由开发人员在代码中,使用new构造方法创建对象,主动管理对象


 容器:是一个服务器软件,或者一个框架(Spring)

 为什么要使用IOC:

目的就是减少对代码的改动,也能实现不同的功能,实现解耦合。

 java中创建对象有哪些方式:

1.构造方法 new Student()

2.反射

3.序列化

4.克隆

5.ioc:容器创建对象

6.动态代理

 

 

ioc的体现:

servlet:

1.创建MyServlet类继承HttpServlet

2.在Web.xml注册servlet

3.没有创建Servlet对象,没有MyServlet servlet = new MyServlet()

4.Servlet是tomcat服务器它帮你创建的,Tomcat也称为容器

  Tomcat作为容器:里面存放的有Servlet对象,Listener、Fileter对象

 

IOC的技术实现:DI是ioc的技术实现。

DI(Dependency Injection):依赖注入,只需要在程序中提供要使用的对象名称就可以,至于对象如何在容器中创建,赋值,查找都由容器内部实现

 

Spring是使用的DI实现ioc的功能,Spring底层创建对象,使用的是反射机制。

 

spring-context和spring-webmvc是spring中的两个模块

 

spring-context:是ioc功能的,创建对象的

spring-webmvc:是做web应用开发的,是servlet的升级

spring-webmvc中也会用到spring-context中创建对象的功能的。

 

 junt:单元测试,一个工具类库,做测试方法使用的。

单元:指定的是方法,一个类中有很多方法,一个方法称为单元

 

使用步骤:

1.需要在pom.xml中加入junit依赖

2.创建测试作用的类:叫做测试类

src/test/java目录中创建类

3.创建测试方法

(1)public 方法

(2)没有返回值 void

(3)方法名称自定义,建议名称是test+你要测试的方法名称

(4)方法没有参数

(5)方法的上面加入@Test,这样的方法是可以单独执行的,不用使用main方法。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。