2_Spring_IOC概念引入_重要
简单的说就是,创建对象的权利,或者是控制的位置,由JAVA代码转移到spring容器,由spring的容器控制对象的创建,就是控制反转,spring创建对象时,会读取配置文件中的信息,然后使用反射给我们创建好对象之后在容器中存储起来,当我们需要某个对象时,通过id获取对象即可,不需要我们自己去new.
一句话:创建对象交给容器
Spring解耦合的原理
图解
创建maven项目,设置maven
先创建一个空项目
名字可以是spring_all
在项目下创建模块 名字可以是spring_test_01
pom.xml中导入spring依赖
-
<dependencies>
-
<dependency>
-
<groupId>org.springframework</groupId>
-
<artifactId>spring-core</artifactId>
-
<version>5.3.5</version>
-
</dependency>
-
<dependency>
-
<groupId>org.springframework</groupId>
-
<artifactId>spring-beans</artifactId>
-
<version>5.3.5</version>
-
</dependency>
-
<dependency>
-
<groupId>org.springframework</groupId>
-
<artifactId>spring-context</artifactId>
-
<version>5.3.5</version>
-
</dependency>
-
<dependency>
-
<groupId>org.springframework</groupId>
-
<artifactId>spring-expression</artifactId>
-
<version>5.3.5</version>
-
</dependency>
-
</dependencies>
四个依赖介绍
spring-context 上下文,容器
spring-beans 创建对象
spring-core 核心jar
spring-expression 表达式jar
但是事实上,我们导入spring-context的时候,会自动导入其他依赖的jar,自动进行了依赖传递
所以,导入一个spring-context 依赖也可以
依赖传递关系图如下
为了方便测试,我们导入Junit测试依赖
-
<dependency>
-
<groupId>junit</groupId>
-
<artifactId>junit</artifactId>
-
<version>4.13.1</version>
-
<scope>test</scope>
-
</dependency>
在项目中定义一个接口和实现类
EmpDao接口和实现类
接口中定义一个方法并在实现类中实现
接口
实现类
在spring配置容器中的对象
创建spring配置文件
文件名没有明确要求,暂时可以叫spring
在spring.xml中配置一个需要由容器初始化的对象
测试通过容器获取对象
Generated with Mybase Desktop 8.2.13
标签:容器,依赖,Spring,springframework,导入,spring,引入,org,IOC From: https://www.cnblogs.com/01way/p/17591269.html