zl程序教程

您现在的位置是:首页 >  后端

当前栏目

【Spring源码学习】spring IOC容器管理

2023-09-14 09:14:18 时间

1、Spring源码下载地址:

JFrog

2、idea新建项目:先实现一个IOC例子

package com.qiaoqiao.spring5;

/**
 * @program: spring5_demo1
 * @description:
 * @author: qiaoqiao
 * @create: 2022-07-21 12:43
 **/

public class User {
    public void add() {
        System.out.println("这是添加方法");
    }
}
package com.qiaoqiao.spring5.testDemo;

import com.qiaoqiao.spring5.User;
import org.junit.Test;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

/**
 * @program: spring5_demo1
 * @description:
 * @author: qiaoqiao
 * @create: 2022-07-21 13:09
 **/

public class TestSpring5 {

    @Test
    public void testDemo() {
        // 加载spring配置文件
        // IOC实现的两种方式之一,ApplicationContext是BeanFactory的子接口,提供更强大的功能,一般用于开发使用
        // 加载配置文件的时候创建对象
        ApplicationContext applicationContext = new ClassPathXmlApplicationContext("bean1.xml");
        // 获取配置创建的对象
        User user = applicationContext.getBean("user", User.class);
        System.out.println(user);
        user.add();
    }

    @Test
    public void testDemo1() {
        // 加载spring配置文件
        // BeanFactory,IOC实现的两种方式之一,是spring内部的使用接口,不提供开发人员使用
        // 加载配置文件的时候不会创建对象,在使用时候才去创建对象
        BeanFactory applicationContext = new ClassPathXmlApplicationContext("bean1.xml");
        // 获取配置创建的对象
        User user = applicationContext.getBean("user", User.class);
        System.out.println(user);
        user.add();
    }
}


<?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">
<!--配置User对象创建-->
    <bean id="user" class="com.qiaoqiao.spring5.User"></bean>
</beans>

 运行,最后结果:

参考:

spring IOC容器管理必须知道这些操作——基于XML方式_来点淦货的博客-CSDN博客

 Spring IOC容器-Bean管理——基于XML方式(续集)_来点淦货的博客-CSDN博客

 spring IOC容器 Bean 管理——基于注解方式_来点淦货的博客-CSDN博客

 Spring-AOP概念及使用教程_来点淦货的博客-CSDN博客

在spring中使用JdbcTemplate进行数据库管理操作_来点淦货的博客-CSDN博客

Spring知识点精简版梳理(一)——概述_临安_大大白的博客-CSDN博客

Spring知识点精简版梳理(二)—— IoC与DI_临安_大大白的博客-CSDN博客

Spring知识点精简版梳理(三)—— Spring Beans_临安_大大白的博客-CSDN博客

Spring知识点精简版梳理(四)—— Spring AOP_临安_大大白的博客-CSDN博客

具体源码下载参考我的资源:B站【尚硅谷】Spring框架视频教程_spring5源码资料下载

 B站【尚硅谷】Spring框架视频教程_spring5源码-Java文档类资源-CSDN下载