【手撸Spring】第一节:初探Spring,了解Spring容器,实现一个简单的Bean容器

学习地址

链接: lite-spring

欢迎点赞,关注,分享

Spring知识点

说到Spring,我们经常会听到2个概念
一是依赖注入
二是控制反转

那他们就是靠我们的Bean容器来实现的,在使用前我们先将所需要的对象信息放入Spring工厂中,它负责对象的初始化和实例化,那接下来就实现一个简单的Bean容器吧

BeanDefinition

它定义了 Bean 的配置元信息接口,此处我们仅定义一个简单的实现

使用一个BeanDefinition类封装我们的对象,在BeanDefinition初始化的时候就实例化bean对象,同时提供getBean方法获取bean
在这里插入图片描述

BeanFactory

前面定义好了Bean的信息,那么后面我们需要将定义好的Bean使用容器进行装载,那就要使用的我们的Bean容器BeanFactory了,在这里我们使用HashMap作为我们的容器来接受所有的Bean对象。
在这里插入图片描述

演示对象的注册和获取流程

定义我们的对象类:UserService

对象里定义了获取用户的方法,此处使用控制台打印模拟获取用户的逻辑操作
在这里插入图片描述

初始化 BeanFactory

此处使用new关键字进行创建我们的工厂对象

BeanFactory beanFactory = new BeanFactory();

注入bean 定义bean的元数据信息

1、使用new关键字创建UserService对象 bean
2、使用new关键字创建BeanDefinition对象 beanDefinition
3、将bean,beanDefinition对象注册到beanFactory中,并以userService作为该对象在容器中的名称

UserService bean = new UserService();
BeanDefinition beanDefinition = new BeanDefinition(bean);
beanFactory.registerBeanDefinition("userService", beanDefinition);

获取bean从工厂类中获取对象

1、从beanFactory中获取userService对象
2、调用userSerice对象中getUser方法用于验证对象是否获取成功

UserService userService = (UserService) beanFactory.getBean("userService");
userService.getUser();

业精于勤,荒于嬉;行成于思,毁于随

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值