IoC的入门案例

本文介绍了Spring框架中的IoC(控制反转)概念,包括IoC思想的定义、如何利用Spring的IoC容器管理和创建对象。文章通过详细步骤指导读者进行代码实战,包括创建项目、配置依赖、编写applicationContext.xml文件以及进行测试,帮助初学者理解并掌握IoC的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

经典白学系列

黑马程序员2022最新SSM框架教程_Spring+SpringMVC+Maven高级+SpringBoot+MyBatisPlus企业实用开发技术_哔哩哔哩_bilibili

目录

1. 前言

2. 思路分析

3. 代码实战

 3.3 使用IoC代码

3.3.1导包

 3.3.2:新建applicationContext.xml,并配置bean

 3.3.3测试


1. 前言

IoC是 SSM框架 -> Spring家族 -> SpringFramework 的控制反转功能

· Ioc思想:“控制反转”:使用对象时,不由new产生对象,由外部创建。创建对象的控制权由程序转移到外部

· Spring提供了一个容器,称为Ioc容器,用来充当IoC思想的外部

· IoC容器负责对象的创建、初始化等一系列工作,被创建或被管理的对象在IoC容器中统称为Bean

2. 思路分析

2.1 管理什么?                                                    ->                service 与 Dao

2.2 如何将被管理的对象告知IoC容器?               ->               写个配置文件

2.3 如何获取到IoC容器                                       ->                 会有一个接口

2.4 得到容器后,如何从容器里面获取bean(对象)?   ->     接口方法(接口里面有操作)

2.5 使用Spring导入哪些坐标?                             ->                   pom.xml

3. 代码实战

3.1 创建项目

file -> new -> project -> maven

然后创建和第三张图一样顺序的包、类

3.2 未使用ioc的代码

 

 3.3 使用IoC代码

在3.2基础上更改

3.3.1导包

在pom.xml下新增依赖

 3.3.2:新建applicationContext.xml,并配置bean

使用的是社区版是创建不了这个文件的,即使是添加了依赖,我的解决是去下载一个2020年的idea,用免费试用30天来运行。第二个链接为下载地址。灵感来源于第一个链接。有查看到教育账号邮箱可以试用一年,可以尝试。

idea 30天_zhaowei512878722的博客-优快云博客_idea怎么试用30天

Other Versions - IntelliJ IDEA (jetbrains.com)

 ​​​

 

<?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">

<!--    1.导入spring坐标spring-context,对应版本为5.2.10.RELEASE-->
<!--    2.配置bean-->
<!--        bean标签表示配置bean-->
<!--        id属性表示给bean起名字-->
<!--        class属性表示给bean定义类型-->
        <bean id="bookDao" class="com.itheima.Dao.impl.BookDaoImpl"/>

        <bean id="bookService" class="com.itheima.Service.impl.BookServiceImpl"/>
</beans>

 3.3.3测试

新建一个test类,测试使用容器拿到

package com.itheima;

import com.itheima.Dao.BookDao;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class APPtest {
    public static void main(String[] args) {
        //3.获取IoC容器
        //ApplicationContext是一个接口,不能创建对象,需要new一个他的实现类:ClassPathXmlApplicationContext,把配置文件告诉这个类,用来获取
        ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");

        //4.获取bean
        //括号内是在applicationContext.xml中配置的bean的id。拿到的是一个对象,要把前面的变量给定义出来
       BookDao bookDao = (BookDao) ctx.getBean("bookDao");

       //5.拿到对象后调用
        bookDao.save();

    }
}

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值