E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Libuv源码解析
Spring
源码解析
-2.IOC容器
源码解析
目录前言一、IOC是什么?二、代码实践三、构建流程分析BeanFactory简介启动过程分析四、Component注解实现原理(手动实现)五、@Autowired源码浅析参考前言Spring三大核心思想:控制反转(IOC),依赖注入(DI)和面向切面编程(AOP)。Spring最核心,最基础的概念是什么?将spring类比java,java最核心,最基础的概念就是object了。java中,所有的
不进大厂不改名二号
·
2023-11-28 21:37
spring
spring
java
spring
源码解析
之ioc-prepareBeanFactory
上一篇,我们分析了beanDefinition的定义,接着,我们继续跟着源码,来看看springioc在启动阶段都做了什么事还是来贴出核心代码publicvoidrefresh()throwsBeansException,IllegalStateException{synchronized(this.startupShutdownMonitor){this.prepareRefresh();Con
mist蒙
·
2023-11-28 21:07
Spring
源码解析
(16)之refresh(4)-prepareBeanFactory源码分析
一、前言在这一篇博客中我们主要是介绍prepareBeanFactory方法,bean工厂的初始化准备工作,设置bean工厂的一些属性值,需要忽略哪一些接口,需要注册哪一些bean,需要设置哪一些bean的后置处理器等。接下来我们看具体的源码分析,并且这里我们还看看Spring属性编辑器,以及我们如果去拓展一个属性编辑器。protectedvoidprepareBeanFactory(Config
技术路上的苦行僧
·
2023-11-28 21:35
Spring源码分析系列
Spring源码分析
Spring属性编辑器
自定义属性编辑器
prepare源码分析
Spring
13.Spring
源码解析
-prepareBeanFactory
点进去此处是Spel表达式设置BeanExpressionResolver此接口只有一个实现:StandardBeanExpressionResolver。接口只含有一个方法:Objectevaluate(Stringvalue,BeanExpressionContextevalContext)prepareBeanFactory将一个此对象放入BeanFactory:beanFactory.se
码农大乐乐丶
·
2023-11-28 21:33
springIOC
spring
java
后端
15.spring
源码解析
-invokeBeanFactoryPostProcessors
BeanFactoryPostProcessor接口允许我们在bean正是初始化之前改变其值。此接口只有一个方法:voidpostProcessBeanFactory(ConfigurableListableBeanFactorybeanFactory);有两种方式可以向Spring添加此对象:通过代码的方式:context.addBeanFactoryPostProcessor通过xml配置的方
码农大乐乐丶
·
2023-11-28 20:11
springIOC
spring
java
数据库
16.spirng
源码解析
-registerBeanPostProcessors
注册拦截bean创建的bean处理器此部分实质上是在BeanDefinitions中寻找BeanPostProcessor,之后调用BeanFactory.addBeanPostProcessor方法保存在一个List中,注意添加时仍然有优先级的概念,优先级高的在前面。
码农大乐乐丶
·
2023-11-28 20:11
springIOC
spring
java
后端
14.spring
源码解析
-postProcessBeanFactory
此方法允许子类在所有的bean尚未初始化之前注册BeanPostProcessor。空实现且没有子类覆盖。
码农大乐乐丶
·
2023-11-28 20:41
springIOC
spring
java
后端
8.Spring
源码解析
-parseBeanDefinitionElement bean解析
首先获取到bean的class属性和parent属性,配置了parent之后,当前bean会继承父bean的属性。之后根据class和parent创建BeanDefinition对象。相关代码区域如下:StringclassName=null;if(ele.hasAttribute(CLASS_ATTRIBUTE)){className=ele.getAttribute(CLASS_ATTRIBU
码农大乐乐丶
·
2023-11-28 20:10
springIOC
spring
java
后端
1.Spring
源码解析
-ClassPathXmlApplicationContext
此类是读取spring的xml配置文件并解析。也是源码入口之一。我们调试即将开始。传递给父类设置值经调试我们得到是给AbstractApplicationContext设置默认的应用上下文父级的值,很明显是空给父类AbstractRefreshableConfigApplicationContext设置属性刷新容器时序图如下:
码农大乐乐丶
·
2023-11-28 20:05
springIOC
java
spring
boot
spring
3.3.17内核基数树radix_tree
源码解析
与示例分析
文章目录基数树定义结构体slotstags接口初始化静态动态系统插入删除查找示例示例1示例2参考基数树Linux基数树(radixtree)是将long整数键值与指针相关联的机制,它存储有效率,并且可快速查询,用于整数值与指针的映射,在内核代码中,使用基数树最多的场景是:IDR机制和内存管理等。定义结构体
口袋物联
·
2023-11-28 17:54
TI
AM62x平台从入门到精通系列
数据结构
基数树
radix
tree
lua
源码解析
——gc实现机制[详细版](一)
前言本文将对lua的gc源代码进行一行一行地解析。gc(垃圾回收)几乎是在所有计算机的高级语言中都会遇到的问题,语言本身的gc机制可以让程序员在开发的过程中用更多的精力去关心工程的逻辑实现,少花时间去关注逻辑底层的内存模型。但是有些时候我们也会遇到一些内存瓶颈的问题,这样就有必要去了解语言本身的内存模型和gc机制了。因此本文会详细介绍lua的gc实现机制以及背后的内存管理机制,并从代码层面逐段逐行
莫道桑榆晚1024
·
2023-11-28 17:24
lua源码解析
lua
跨平台C语言基础库
平台,可方便用于实际项目中,也可供爱好造轮子的同学参考学习;提供了时间日期、字符串、日志、线程、线程池、同步锁、缓存buf等基础API;实现了非阻塞IO的事件驱动框架,类似libevent、libev、
libuv
ithewei
·
2023-11-28 15:08
handler解析(2) -Handler
源码解析
目录基础了解:相关概念解释整体流程图:
源码解析
Looper总结:sendMessage总结:ThreadLocal基础了解:Handler是一套Android消息传递机制,主要用于线程间通信。
沙滩捡贝壳的小孩
·
2023-11-28 13:24
android进阶
源码解析
android
android
studio
handler
Android-Handler
源码解析
-Looper
成员变量//Log的TAGprivatestaticfinalStringTAG="Looper";//线程本地变量,保证了每个线程仅有唯一的Looper对象。@UnsupportedAppUsagestaticfinalThreadLocalsThreadLocal=newThreadLocal();//主线程的Looper,由ActivityThread的main方法内调用Looper.pre
xiaopangcame
·
2023-11-28 13:24
handler
handler
react
源码解析
8.render阶段
react
源码解析
8.render阶段视频课程(高效学习):进入课程课程目录:1.开篇介绍和面试题2.react的设计理念3.react源码架构4.源码目录结构和调试5.jsx&核心api6.legacy
全栈潇晨
·
2023-11-28 13:33
手势监听类GestureDetector Listener
源码解析
二、Listener
源码解析
1.OnGestureListener2.OnDoubleTapListener3.OnContextClickListener4.SimpleOnGestureListener
我怀里的猫
·
2023-11-28 12:24
java
服务器
前端
4.Spring
源码解析
-loadBeanDefinitions(XmlBeanDefinitionReader)
第一个点进去发现是空肯定走的第二个逻辑了这里在这里已经给属性设置了值,所以肯定不是空能拿到。1.ClassPathXmlApplicationContext总结:该loadBeanDefinitions是XmlBeanDefinitionReader设置xml文件在哪。
码农大乐乐丶
·
2023-11-28 09:41
springIOC
java
spring
Open Feign
源码解析
(二) --- 如何发送http请求
OpenFeign
源码解析
二如何发送http请求?如何组件化?
只因为你而温柔
·
2023-11-28 06:41
#
JAVA-SpringBoot
#
feign
go channel原理及使用场景
转载自:gochannel原理及使用场景
源码解析
typehchanstruct{qcountuint//Channel中的元素个数dataqsizuint//Channel中的循环队列的长度bufunsafe.Pointer
六月的
·
2023-11-28 04:11
golang
链表
开发语言
Android 相机库CameraView
源码解析
(二) : 拍照
1.前言这段时间,在使用natario1/CameraView来实现带滤镜的预览、拍照、录像功能。由于CameraView封装的比较到位,在项目前期,的确为我们节省了不少时间。但随着项目持续深入,对于CameraView的使用进入深水区,逐渐出现满足不了我们需求的情况。Github中的issues中,有些BUG作者一直没有修复。那要怎么办呢?项目迫切地需要实现相关功能,只能自己硬着头皮去看它的源码
氦客
·
2023-11-27 19:46
android
CameraView
拍照
相机
音视频
源码解析
第三方库
Android 相机库CameraView
源码解析
(一) : 预览
1.前言这段时间,在使用natario1/CameraView来实现带滤镜的预览、拍照、录像功能。由于CameraView封装的比较到位,在项目前期,的确为我们节省了不少时间。但随着项目持续深入,对于CameraView的使用进入深水区,逐渐出现满足不了我们需求的情况。Github中的issues中,有些BUG作者一直没有修复。那要怎么办呢?项目迫切地需要实现相关功能,只能自己硬着头皮去看它的源码
氦客
·
2023-11-27 19:45
音视频开发
android
CameraView
源码解析
预览
第三方库
相机
natario1
关于Vue的
源码解析
(一)
先上一张vue底层原理关系图vue底层原理关系图上图完整的描述了Vue运行的机制,首先数据发生改变,就会经过Data处理,然后Dep会发出通知(notify),告诉Watcher有数据发生了变化,接着Watcher会传达给渲染函数跟他说有数据变化了,可以渲染视图了(数据驱动视图),进而渲染函数执行render方法去更新VNODE,也就是我们说的虚拟DOM,最后虚拟DOM根据最优算法,去局部更新需要
粥的进击之旅
·
2023-11-27 12:58
Vue
源码解析
(一)深入浅出手撕简易VUE.JS和MVVM原理
Vue
源码解析
(一)深入浅出手撕简易VUE.JS和MVVM原理声明本文参考了小马哥的视频讲解和代码,结合自己的理解以及其它资料综合得出,水平有限,错误之处还望斧正。
帝江学者
·
2023-11-27 10:38
vue.js
javascript
前端
es6
Java技术体系之框架原理篇(一)——Spring
源码解析
目录1、容器的整体功能1.1从一个测试用例说起1.2刷新容器1.2.1环境准备1.2.2加载BeanFactory(详见章节2、Bean的解析和注册)1.2.3功能扩展1.2.4调用BeanFactoryPostProcessor(待研究)1.2.5注册BeanPostProcessor(注意这里不是调用,真正的调用在IoC流程里)1.2.6国际化处理(待研究)1.2.7初始化消息广播器1.2.8
东湖樵夫
·
2023-11-27 10:15
框架原理篇
java
spring
开发语言
万字解析设计模式之责任链模式、状态模式
目录一、责任链模式1.1概述1.2结构1.3实现1.4优缺点1.5应用场景1.6
源码解析
二、状态模式2.1概述2.2结构2.3实现2.4优缺点2.5应用场景三、责任链模式实验任务描述实现方式编程要求测试说明四
烟雨平生9527
·
2023-11-27 08:47
设计模式
设计模式
责任链模式
命令模式
RocketMq架构和
源码解析
NameServer:作为注册中心,提供路由注册、路由踢出、路由发现功能,舍弃强一致,保证高可用,集群中各个节点不会实时通讯,其中一个节点下线之后,会提供另外一个节点保证路由功能。Broker:消息中转角色,负责存储消息、转发消息。Broker服务器在RocketMQ系统中负责接收从生产者发送来的消息并存储、同时为消费者的拉取请求作准备。Broker服务器也存储消息相关的元数据,包括消费者组、消费
我不是攻城狮
·
2023-11-27 08:52
RocketMq
rocketmq
架构
SparkSQL
源码解析
SparkPlanner
文章目录物理计划转换过程SparkPlan分类LeafExecNodeUnaryExecNodeBinaryExecNode其他类型的SparkPlanSparkPlannerPlanLaterplanSparkStrategy.applycollectPlaceholdersplaceholders解析prunePlans总结物理计划转换过程从OptimizedLogicalPlan传入到Spa
KD_
·
2023-11-27 03:03
Spark
Kestrel:C# Asp.net Core中的高性能Web服务器
它基于
libuv
库,这是一个跨平台的异步I/O库,利用了操作系统提供的异步I/O功能,以实现非阻
2301_79366332
·
2023-11-27 02:38
c#
asp.net
前端
C#
深入MyBatis
源码解析
MyBatis如何解析配置?(二)
一般来说,我们使用MyBatis的时候,都会通过SqlSessionBuilder来获取SessionFactory,而通过源码我们可以发现,XML配置文件的解析便是在这里开始的。sqlSessionFactory=newSqlSessionFactoryBuilder().build(reader);主要代码如下:publicSqlSessionFactorybuild(Readerreader
java高级架构F六
·
2023-11-27 01:23
实战 Spring Cloud Gateway 之限流篇
每天10:33更新文章,每天掉亿点点头发...源码精品专栏原创|Java2021超神之路,很肝~中文详细注释的开源项目RPC框架Dubbo
源码解析
网络应用框架Netty
源码解析
消息中间件RocketMQ
公众号-芋道源码
·
2023-11-26 23:17
分布式
dbcp
编程语言
xhtml
java
实战:使用 Nginx 限流
每天8:55更新文章,每天掉亿点点头发...源码精品专栏原创|Java2020超神之路,很肝~中文详细注释的开源项目RPC框架Dubbo
源码解析
网络应用框架Netty
源码解析
消息中间件RocketMQ
源码解析
数据库中间件
公众号-芋道源码
·
2023-11-26 23:46
中间件
java
linux
nginx
分布式
Mybatis
源码解析
三——反射模块(Reflector)
反射模块(Reflector)Mybatis
源码解析
一——搭建阅读环境Mybatis
源码解析
二——解析器模块(parsing)Mybatis
源码解析
三——反射模块(Reflector)文章目录反射模块(
天道酬巧
·
2023-11-26 19:23
Mybatis源码探究
jQuery数据缓存$.data 的使用以及
源码解析
一、实现原理:对于DOM元素,通过分配一个唯一的关联id把DOM元素和该DOM元素的数据缓存对象关联起来,关联id被附加到以jQuery.expando的值命名的属性上,数据存储在全局缓存对象jQuery.cache中。在读取、设置、移除数据时,将通过关联id从全局缓存对象jQuery.cache中找到关联的数据缓存对象,然后在数据缓存对象上执行读取、设置、移除操作。对于Javascript对象,
_双眸
·
2023-11-26 15:29
【微服务专题】SpringBoot自动配置简单
源码解析
基本概念0.2SpringBoot中的【约定大于配置】0.3从SpringMVC看【约定大于配置】0.4从Redis看【约定大于配置】0.5小结笔记正文一、@EnableAutoConfiguration
源码解析
二
验证码有毒
·
2023-11-26 14:21
tuling学院学习笔记
Java
微服务
spring
boot
OkHttp3
源码解析
- 请求流程
系列文章目录第一章OkHttp3
源码解析
-请求流程第二章OkHttp3
源码解析
-拦截器第三章OkHttp3
源码解析
-连接机制和缓存机制文章目录系列文章目录前言一、OkHttp的基本使用流程二、OkHttp
Android百晓生
·
2023-11-26 14:38
开源库
okhttp
android
go atexit源码分析
文章目录atexit
源码解析
UML类图样例一:程序退出之前执行注册函数1.1流程图1.2代码分析样例二:使用cancel取消注册函数2.1cancel流程图2.2代码分析样例三:使用Fatal/Fatalln
风华同学
·
2023-11-26 14:21
Go语言学习之旅
golang
开发语言
后端
我为 Netty 贡献源码 | 且看 Netty 如何应对 TCP 连接的正常关闭,异常关闭,半关闭场景...
本系列Netty
源码解析
文章基于4.1.56.Final版本写在前面.....本文是笔者肉眼盯Bug系列的第三弹,前两弹分别是:抓到Netty一个Bug,顺带来透彻地聊一下Netty是如何高效接收网络连接的
极客重生
·
2023-11-26 11:26
内核
epoll
hashtable
uefi
360
ArrayList
源码解析
概述ArrayList是实现List接口的动态数组,所谓动态就是它的大小是可变的。实现了所有可选列表操作,并允许包括null在内的所有元素。除了实现List接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。每个ArrayList实例都有一个容量,该容量是指用来存储列表元素的数组的大小。默认初始容量为10。随着ArrayList中元素的增加,它的容量也会不断的自动增长。在每次添加新的元素
tracy_668
·
2023-11-26 07:18
哈希表(附部分
源码解析
)
哈希表TreeMap分析时间复杂度(平均)添加、删除、搜索:O(logn)特点Key必须具备可比较性元素的分布是有顺序的在实际应用中,很多时候的需求Map中存储的元素不需要讲究顺序Map中的Key不需要具备可比较性不考虑顺序、不考虑Key的可比较性,Map有更好的实现方案,平均时间复杂度可以达到O(1)那就是采取哈希表来实现Map初始哈希表空间换时间:一开始数组里面的索引肯定是比key的数量多的。
程序员沉梦听雨
·
2023-11-26 07:38
#
恋上数据结构与算法
散列表
哈希算法
数据结构
阻塞队里总结与重要
源码解析
1.java中的阻塞队列BlockingQueue为阻塞队列的顶级接口,下边有几种阻塞队列:ArrayBlockingQueue:由数组结构组成的有界阻塞队列。LinkedBlockingQueue:由链表结构组成的有界(但大小默认值为Integer.MAX_VALUE)阻塞队列。PriorityBlockingQueue:支持优先级排序的无界阻塞队列。DelayQueue:使用优先级队列实现的延
武昌库里写JAVA
·
2023-11-25 22:36
Java面试
java
网络
开发语言
面试
Spring源码深度解析
newClassPathXmlApplicationContext("classpath:applicationContext.xml")这个构造方法;3.进入核心方法refresh的源码4.核心方法
源码解析
Mr Tang
·
2023-11-25 20:08
java
spring
源码
spring
java
后端
Spring cloud - Hystrix源码
从@EnableCircuitBreaker入手我们是通过在启动类添加@EnableCircuitBreaker注解启用Hystrix的,所以,
源码解析
也要从这个注解入手。
weixin_44612246
·
2023-11-25 18:17
spring
cloud
hystrix
java
设计模式——装饰者模式
装饰者模式5.3、装饰者模式5.3.1、概述5.3.2、结构5.3.3、案例5.3.4、使用场景5.3.5、JDK
源码解析
5.3.6、代理和装饰者的区别5.3、装饰者模式5.3.1、概述我们先来看一个快餐店的例子
渣渣苏
·
2023-11-25 13:52
设计模式
设计模式
装饰者模式
vue2.0
源码解析
,initRender(初始化render)
注:此章只讨论初始化过程,对render具体渲染不做讨论,在后面会有文章解析render过程。initRender函数/*初始化render*/exportfunctioninitRender(vm:Component){//_vnode组件的真实节点,它的tag就是标签下的第一个节点vm._vnode=null;//therootofthechildtreevm._staticTrees=nul
柯闪电
·
2023-11-25 13:17
vue
javascript
vue.js
vue
彻底理解 Cookie、Session、Token
源码精品专栏中文详细注释的开源项目RPC框架Dubbo
源码解析
网络应用框架Netty
源码解析
消息中间件RocketMQ
源码解析
数据库中间件Sharding-JDBC和MyCAT
源码解析
作业调度中间件Elastic-Job
公众号-芋道源码
·
2023-11-25 12:59
skynet
源码解析
(三)——启动流程
对于你不了解的框架或者引擎,介绍再多的逻辑结构都好像有点茫然的感觉。所以小编认为,最有效的方式就是搞清楚框架启动流程的步骤,让自己心中有一条线可以牵引着。当你在终端输入./skeynetexample/config的时候,就开始启动skynet了。那么skynet是从哪个文件的哪个函数开始运行呢?这里如果大家不知道的话可以用gdb的方式在main函数中打断点,像下面这样bmain因为任何c/c++
程序员一点
·
2023-11-25 05:18
skynet
skynet源码
skynet
源码解析
--启动篇之三大模块
主要模块基本信息初始化优先启动的服务监视器定时器模块网络模块工作模块总结基本信息初始化初始化配置之后,就要开始启动skynet的主要模块。不过,启动模块之前要先初始化一些基本信息。生成harborID。这个ID用一个整型的高八位表示,也就是说master/harbor模式中,同一个集群最多只有256个harbor服务器。句柄池初始化。这个句柄池主要用来管理服保存务对象的句柄,其中还包括句柄和服务的
这个世界哪有什么赛跑
·
2023-11-25 05:48
skynet源码解析
SpringBoot 整合 Socket 实战案例 ,实现 单点发送、广播群发,1对1,1对多
每天14:00更新文章,每天掉亿点点头发...源码精品专栏原创|Java2021超神之路,很肝~中文详细注释的开源项目RPC框架Dubbo
源码解析
网络应用框架Netty
源码解析
消息中间件RocketMQ
Java基基
·
2023-11-25 04:08
spring
boot
java
后端
spring
开发语言
Spring之依赖注入底层
源码解析
(一)
Spring之依赖注入底层
源码解析
Spring依赖注入底层流程图Spring中依赖注入的方式手动注入自动注入@Autowired自动注入寻找注入点static的字段或方法为什么不支持依赖注入桥接方法注入点进行注入字段注入
枫度柚子
·
2023-11-25 02:31
spring
06-Spring之依赖注入
源码解析
(上)
依赖注入底层原理流程图:https://www.processon.com/view/link/5f899fa5f346fb06e1d8f570Spring中到底有几种依赖注入的方式?首先分两种:手动注入自动注入手动注入在XML中定义Bean时,就是手动注入,因为是程序员手动给某个属性指定了值。上面这种底层是通过set方法进行注入。上面这种底层是通过构造方法进行注入。所以手动注入的底层也就是分为两
Draven*Liu
·
2023-11-25 02:31
spring
java
spring
boot
上一页
14
15
16
17
18
19
20
21
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他