本系列文章介绍ByxContainer的实现思路。ByxContainer是一个简单的轻量级IOC容器,具有以下特性:使用JSON格式的配置文件支持构造函数注入、静态工厂注入、实例工厂注入、属性注入、setter注入、条件注入组件的延迟加载和单例组件根据id注册、获取容器中的组件本篇文章介绍ByxContainer中与对象初始化有关的设计。回顾在上篇文章中,我们解决了对象创建的问题,但是在实际开
1、先准备一个基本的容器对象,包含些map结构的集合,用来方便后续过程中存储具体的对象 2、进行配置文件的读取工作或者注解的解析工作,将需要创建的bean对象都封装成BeanDefinition对象存储在容器中 3、容器将封装好的BeanDefinition对象通过反射的方式进行实例化,完成对象的实例化工作 4、进行对象的初始化操作,也就是给类中的对应属性值就行设置,也就是进行依赖注入,完成整个
原创 2023-03-17 23:04:34
175阅读
IOC概念以及包含的设计思想   IOC的概念我们已经熟知,即控制反转(依赖注入),那么IOC的内涵是什么呢,它又是如何使代码解耦的呢?据一个例子来讲,直接用演员来编排剧本,用java语言来描述此场景,可以在剧本类里面直接调用演员类创建需要出场的演员对象,比如在Mottack剧本类中new一个LiuDeua对象来编排剧本,但是这样的编码会使具体的演员类与该剧本有耦合关系,即只能由这个演员来演该
配置文件配置包扫描路径递归包扫描获取.class文件反射,确定需要交给IOC管理的类对需要注入的类进行依赖
原创 2022-05-26 01:29:31
133阅读
1、先准备一个基本的容器对象,包含些map结构的集合,用来方便后续过程中存储具体的对象 2、进行配置文件的读取工作或者注解的解析工作,将需要创建的bean对象都封装成BeanDefinition对象存储在容器中 3、容器将封装好的BeanDefinition对象通过反射的方式进行实例化,完成对象的实例化工作 4、进行对象的初始化操作,也就是给类中的对应属性值就行设置,也就是进行依赖注入,完成整个
原创 2023-03-17 23:03:56
246阅读
容器     /*     数组 : 存储多个数据         引用数据类型,对象数据         长度旦确定不可改变,定长的         存储的多个数据要求数据类型相同       &
转载 2024-01-02 10:01:34
28阅读
:什么是spring中的bean?在 Spring 中,构成应用程序主干并由 Spring IoC 容器管理的对象称为 bean。bean 是由 Spring IoC 容器实例化、组装和管理的对象。通俗的来说,就是由spring的IOC容器管理的所有的对象都叫做bean。二:什么是IOC?什么是DI控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的种设计原则
原创 2022-12-06 14:32:46
79阅读
面试官特别爱问SpringIOC底层实现,Spring源码晦涩难懂 怎么办呢? 跟着老
原创 2023-01-12 11:14:16
108阅读
匿名函数的那些事儿 匿名函数,说白了就是“没有名字的函数”,恩废话。给段代码可能更为直白: $foo =function(){ // this is a closure } 对,这就是匿名函数,没什么特别的,和般函数结构神似,唯独少了函数名。而且这个函数可以作为一个值被赋予一个变量或者对象属性
原创 2022-04-12 16:43:41
82阅读
 
原创 2023-02-14 10:51:41
74阅读
String,java.util下的集合容器==============================================================================数组长度限制为 Integer.Integer.MAX_VALUE;String的长度限制: 底层是char 数组 长度 Integer.MAX_VALUE 线程安全的java.util下的集合容器
转载 2024-09-10 08:30:28
13阅读
1. 如何实现一个IOC容器 1. 配置文件配置包扫描路径 2. 递归包扫描获取.class文件 3. 反射,确定需要交给IOC管理的类 4. 对需要注入的类进行依赖注入 配置文件中指定需要扫描的包路径 定义些注解,分别表示访问控制层、业务逻辑层、数据持久层、依赖注入注解、获取配置文件注解 从配置 ...
转载 2021-07-19 21:33:00
106阅读
2评论
写在最前 这个工程旨在练习Java注解和反射,以及体会依赖注入的原理、过程,不以追求可靠、可用为目的,且阅读此博客前应当熟练掌握Java且有定的Spring使用经验 预期功能 模拟Spring中的Bean注册、自动装配 编码部分 自定义注解部分 模拟Spring中的部分注解 @Bean注解 @Ta ...
转载 2021-09-07 22:46:00
144阅读
2评论
手撸一个IOC容器需要先掌握好 XML文件解析 和 ...
原创 2023-01-14 21:52:52
265阅读
实现一个自己的IOC package com.IocExample; import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; /*** *
转载 2019-08-09 20:12:00
105阅读
2评论
从Unity到Spring.Net,到Ninject,几年来陆陆续续用过几个IoC框架。虽然会用,但也没有直仔细的研究过IoC实现的过程。最近花了点时间,下了Ninject的源码,研究了番,颇有收获。下面我要实现一个最最简单的IoC容器,以让跟我样的小菜能更好的理解IoC框架的到底为我们做了什
原创 2022-01-08 09:43:49
331阅读
1.新建一个控制台应用程序 TestIOC2.新增一个 IocFactory类using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Xml;using System...
转载 2015-08-20 14:01:00
76阅读
2评论
一个报文段丢失时,会等待定的超时周期然后才重传分组,增加了端到端的时延。 当一个报文段丢失时,在其等待超时的过程中,可能会出现这种情况:其后的报文段已经被接收端接收但却迟迟得不到确认,发送端会认为也丢失了,从而引起不必要的重传,既浪费也浪费时间。 幸运的是,由于TCP采…
原创 2022-01-13 16:34:59
37阅读
IService接口,以实现服务的启动、停止功能: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespac
原创 2022-04-30 11:57:06
744阅读
# Java 开发一个简单的 IOC(控制反转) ## 什么是 IOCIOC(Inverse of Control)是种设计原则,它使得程序的控制流程被反转,通常是用来实现依赖注入。通过这种方式,我们可以降低模块之间的耦合度,使得代码更易于测试和扩展。 下面我们将通过一个简单的示例,教学如何用 Java 实现一个基本的 IOC 容器。 ## 实现步骤 以下是实现 IOC 的流程步骤
原创 9月前
31阅读
  • 1
  • 2
  • 3
  • 4
  • 5