【Spring源码学习】spring IOC容器管理
2023-09-14 09:14:18 时间
1、Spring源码下载地址:
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源码资料下载
相关文章
- 消息中间件activemq-5.13.0整合spring
- 【Spring Boot】Spring Boot之使用 Java High Level REST Client 整合elasticsearch
- spring boot 使用application.properties 进行外部配置
- spring boot单元测试之九:用@MybatisTest注解基于mysql+mybatis测试mapper/sql(spring boot 2.4.4)
- Spring AOP源码分析(一)AOP介绍和aspectj、SpringAOP入门
- Spring AOP源码分析(八)SpringAOP要注意的地方
- spring bean 的加载机制(源码分析)
- spring mvc获取header
- Spring的JNDI数据源连接池配置示例及Spring对JNDI实现分析
- Mybatis与Spring整合连接MySQL
- spring boot:配置shardingsphere(sharding jdbc)使用druid数据源(druid 1.1.23 / sharding-jdbc 4.1.1 / mybatis / spring boot 2.3.3)
- Spring繁华的AOP王国---第五讲之应用案例和扩展
- Spring源码探究---好用的工具和思路整理
- Spring源码核心知识点凝练总结
- 毕业设计 Spring Boot农业商品信息管理系统(含源码+论文)
- 毕业设计 Spring Boot的在线音乐网站系统(含源码+论文)
- 毕业设计 Spring Boot的考研信息收集与查询系统(含源码+论文)
- 毕业设计 Spring Boot的家庭食谱管理系统(含源码+论文)
- 毕业设计 Spring Boot 房屋出租出售管理系统(含源码+论文)
- 毕设项目 Spring Boot 病人跟踪治疗信息管理系统(含源码+论文)
- Spring之AOP源码理解,Spring4.3.12.RELEASE版本
- Spring validation的Validated注解的使用
- spring中@param和mybatis中@param使用差别
- spring-cloud-sleuth+zipkin追踪服务