前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spring基础(二):IOC概念引入

Spring基础(二):IOC概念引入

原创
作者头像
Lansonli
发布2022-12-25 11:43:10
3040
发布2022-12-25 11:43:10
举报
文章被收录于专栏:Lansonli技术博客

​IOC概念引入

简单的说就是,创建对象的权利,或者是控制的位置,由JAVA代码转移到spring容器,由spring的容器控制对象的创建,就是控制反转,spring创建对象时,会读取配置文件中的信息,然后使用反射给我们创建好对象之后在容器中存储起来,当我们需要某个对象时,通过id获取对象即可,不需要我们自己去new。

一句话:创建对象交给容器

Spring解耦合的原理

图解

1、创建maven项目,设置maven

先创建一个空项目

名字可以是spring_all

在项目下创建模块 名字可以是spring_test_01

2、pom.xml中导入spring依赖

代码语言:javascript
复制
    <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测试依赖

代码语言:javascript
复制
<dependency>
   <groupId>junit</groupId>
   <artifactId>junit</artifactId>
   <version>4.13.1</version>
   <scope>test</scope>
</dependency>

3、在项目中定义一个接口和实现类

EmpDao接口和实现类

2、接口中定义一个方法并在实现类中实现

接口

实现类

在spring配置容器中的对象

4、创建spring配置文件

文件名没有明确要求,暂时可以叫spring

在spring.xml中配置一个需要由容器初始化的对象

5、测试通过容器获取对象

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ​IOC概念引入
    • Spring解耦合的原理
      • 1、创建maven项目,设置maven
      • 2、pom.xml中导入spring依赖
      • 3、在项目中定义一个接口和实现类
      • 2、接口中定义一个方法并在实现类中实现
      • 4、创建spring配置文件
      • 5、测试通过容器获取对象
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档