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
动态代理源码分析
Spring基础 - Spring核心之面向切面编程(AOP)
这就引入代理技术,分静态代理和
动态代理
,
动态代理
又包含JDK代理和CGLIB代理等如何理解AOPAOP的本质也是为了解耦,它是一种设计思想AOP
少写代码少看论文多多睡觉
·
2024-02-10 05:09
Java全栈开发进阶
#
Spring
spring
java
后端
linux网络
源码分析
——基本数据结构1
sock底层的数据结构sock_common是sockets在网络层的最小表示,后面其他的结构体会用到sock_common结构体。/***structsock_common-minimalnetworklayerrepresentationofsockets*@skc_daddr:ForeignIPv4addr*外部ipv4地址*@skc_rcv_saddr:BoundlocalIPv4addr
行走的透明人
·
2024-02-10 04:21
linux
网络
数据结构
TCP IP
源码分析
proto结构体proto定义了传输层的接口,是传输层对不同socket的抽象,比如conncet、close、传输层协议名称、disconnect、accept等接口,可以看下面的注释理解主要的接口。structproto{void(*close)(structsock*sk,longtimeout);关闭socket连接int(*connect)(structsock*sk,structsoc
行走的透明人
·
2024-02-10 04:51
tcp/ip
网络
服务器
iOS底层原理探索—NSObject的alloc
源码分析
这篇文章与上一片文章区别在于,NSObject中的alloc与自定义类中的alloc的源码流程的区别。NSObject的alloc无法进入源码在NSObject与Animal处添加断点image.png在alloc源码处打一断点image.png放开第一处断点,发现并没有进入alloc源码image.png探索NSObject中的alloc为什么不走allocimage.png通过汇编代码得知[N
十年开发初学者
·
2024-02-10 03:41
JAVA面试题15
在Java中,可以通过反射机制来实现诸如实例化对象、调用私有方法、
动态代理
等功能,常用于框架、ORM(对象关系映射)等场景。什么是Java中的序列化(Serialization)?
CrazyMax_zh
·
2024-02-09 17:36
java
开发语言
JDK和Cglib
动态代理
1.代理模式(静态代理) 代理模式是常用设计模式的一种,我们在软件设计时常用的代理一般是指静态代理,也就是在代码中显式指定的代理。 静态代理由业务实现类、业务代理类两部分组成。业务实现类负责实现主要的业务方法,业务代理类负责对调用的业务方法作拦截、过滤、预处理,主要是在方法中首先进行预处理动作,然后调用业务实现类的方法,还可以规定调用后的操作。我们在需要调用业务时,不是直接通过业务实现类来调用的,
我是java程序员
·
2024-02-09 17:05
spring启动
源码分析
一、示例代码整体代码工程目录如下image.png首先我们新建一个类ManpublicclassMan{publicvoidsay(Stringcontent){System.out.println("say:"+content);}}然后我们新建一个main方法类,通过new一个ClassPathXmlApplicationContext,来加载ManpublicclassApp{publics
摆渡时光
·
2024-02-09 16:43
java 动态编译
为了更深入的了解
动态代理
,手动实现一下
动态代理
,其中涉及动态编译的东西,记录一下入门点推荐先看这个文章Java类运行时动态编译技术下面演示的流程:生成java文件》编译该文件》加载class文件》反射调用方法注
else05
·
2024-02-09 16:40
【数据库篇】MySQL
源码分析
之row_search_mvcc详细分析(Page加载及索引分析)
从上一篇文章了解到Innodb的查询最终都是通过row_search_mvcc执行的,接下来就来略详细的分析下row_search_mvcc的执行流程。本文主要分析查询逻辑忽略了部分细节,比如行锁表锁等处理,数据库事务的快照查询等。由于本人是Java开发并不擅长C++,只是看代码并没有进行调试,分析细节不对的地方还请指正哈~一、先理清楚row_search_mvcc的主要流程1.1、基本参数定义d
苒翼
·
2024-02-09 14:59
数据库
mysql
数据库
sql
MVCC原理探究及MySQL源码实现分析
董红禹目录预览数据库多版本读场景MVCC实现原理1、通过DB_ROLL_PT回溯查找数据历史版本2、通过readview判断行记录是否可见MVCC解决了什么问题MySQL代码分析1、InnoDB隐藏字段
源码分析
老叶茶馆_
·
2024-02-09 14:28
Spring aop学习笔记
AOP的三种实现方式:1、在编译期的时候织入2、在类加载时修改字节码3、使用
动态代理
增强方法SpringAOP的实现:第三种方式,使用
动态代理
实现方法增强。
一人_e0fb
·
2024-02-09 13:22
OpenSceneGraph
源码分析
:osg模块
osg库是OpenSceneGraph最为重要的一个模块,提供了内存管理、场景管理、图形绘制、状态管理等功能。Ref.fromOpenSceneGraphQuickStartGuide======================================TheosglibraryistheheartofOpenSceneGraph.Itdefinesthecorenodesthatmakeu
JiNan.YouQuan.Soft
·
2024-02-09 10:43
OSG
其他
详细分析python中的from waitress import serve(附Demo)
目录前言1.基本知识2.serve
源码分析
3.基本操作前言以前玩python开发的时候写过一些见解,推荐阅读:uwsgi启动django以及uwsgi.ini的配置参数详解Django框架零基础入门部署服务器除了
码农研究僧
·
2024-02-09 08:41
python
python
serve
flask
Telegram-iOS
源码分析
:第一部分
版权声明本文内容均为搬运,目的只为更方便的学习Telegram编码思维。如需查阅原作者文章,附赠原文章机票part-1-cover.pngTelegram是市面上最受欢迎的即时通讯之一。截至今年4月,其MAU(月活跃用户人数)已超过4亿。考虑到某些国家/地区不提供该服务,这显然是一个了不起的成就。大多数Telegram客户端应用程序源码都是开源的,足以证明其安全性。Telegram官方还启用了一个
灰原丶逗
·
2024-02-09 08:37
设计模式:
动态代理
动态代理
第一步:实现钢笔接口interfacePenInterface{voidwrite();voiddraw();}第二步:学生的手实现钢笔接口publicclassStudentHandimplementsPenInterface
Codes作业本
·
2024-02-09 07:46
Spring Developer Tools
源码分析
:二、类路径监控
在SpringDeveloperTools
源码分析
一中介绍了devtools提供的文件监控实现,在第二部分中,我们将会使用第一部分提供的目录监控功能,实现对开发环境中classpath的监控。
Java架构_师
·
2024-02-09 03:02
消息中间件之RocketMQ
源码分析
(八)
RocketMQ中的消息过滤RocketMQ设计了消息过滤,来解决大量无意义流量的传输:即对于客户端不需要的消息,Broker就不会传输给客户端,以免浪费宽带,RocketMQ4.2.0支持Tag过滤、SQL92过滤、FilterServer过滤Tag过滤第一步:用户发送一个带Tag的消息第二步:用户订阅一个Topic的Tag,RocketMQBroker会保存订阅关系第三步:在Broker端做T
coffee_babe
·
2024-02-09 02:36
消息中间件
rocketmq
java
MyBatis之
动态代理
实现增删改查以及MyBatis-config.xml中读取DB信息文件和SQL中JavaBean别名配置
.编写测试类1.执行步骤2.代码实例3.运行log开发环境构造图总结前言上一篇文章,我们使用MyBatis传统的方式(namespace+id,非接口式编程),完成了数据库的增删改查操作,今天我们学习
动态代理
JavaWeb学起来
·
2024-02-09 01:28
MyBatis
mybatis
DataX
源码分析
TaskGroupContainer
系列文章目录一、DataX详解和架构介绍二、DataX
源码分析
JobContainer三、DataX
源码分析
TaskGroupContainer四、DataX
源码分析
TaskExecutor五、DataX
shandongwill
·
2024-02-08 23:25
大数据
DataX
ETL
大数据
比特币
源码分析
系列3---区块block数据结构
bitcoin版本:0.16.2区块结构分析区块是组成区块链的基本单位,可以通过bitcoin-cli命令查看一个区块的基本信息区块block的数据结构如下图(存储方式为小端):block数据结构整体结构数据项大小(Byte)描述BlockSize4区块大小BlockHeader80区块头信息大小Transactionsm*n(n>=250)所有交易的列表TransactionsCounter1-
JC86
·
2024-02-08 20:54
从
源码分析
Hystrix工作机制
一、Hystrix解决了什么问题?在复杂的分布式应用中有着许多的依赖,各个依赖都有难免在某个时刻失败,如果应用不隔离各个依赖,降低外部的风险,那容易拖垮整个应用。举个电商场景中常见的例子,比如订单服务调用了库存服务、商品服务、积分服务、支付服务,系统均正常情况下,订单模块正常运行。image但是当积分服务发生异常时且会阻塞30s时,订单服务就有有部分请求失败,且工作线程阻塞在调用积分服务上。ima
vivo互联网技术
·
2024-02-08 19:07
(十七)springboot实战——spring securtity的授权流程源码解析
前言本节内容是关于springsecurity安全框架授权流程的
源码分析
,springsecurity的授权流程主要是在FilterSecurityInterceptor过滤器中实现的。
厉害哥哥吖
·
2024-02-08 17:19
#
springboot
spring
boot
(十六)springboot实战——spring securtity的认证流程源码解析
前言本节内容是关于springsecurity安全框架认证流程的
源码分析
,springsecurity的认证流程主要是在UsernamePasswordAuthenticationFilter过滤器中实现的
厉害哥哥吖
·
2024-02-08 17:47
#
springboot
spring
boot
深度解析ScheduledThreadPoolExecutor源码之ScheduledFutureTask
文章目录引言一、RunnableScheduledFuture定义周期性接口二、ScheduledFutureTask
源码分析
2.1ScheduledFutureTask参数解析2.2ScheduledFutureTask
对酒当歌丶人生几何
·
2024-02-08 17:45
java
开发语言
算法
【代理模式】
类型:静态代理和
动态代理
。静态代理:是在编译时期就已经确定代理关系的代理方式。在静态代理中,需要手动创建代理类,并在代理类中编写对被代理对象的调用逻辑。静态代理的优点是简
Lpy2569
·
2024-02-08 14:35
设计模式
代理模式
四、Docker Daemon 中NewDaemon的实现(摘自《Docker
源码分析
》)
1、NewDaemon作用简介在Docker架构中有很多重要的概念,如:graph,graphdriver,execdriver,networkdriver,volumes,Dockercontainers等。Docker在实现过程中,需要将以上实体进行统一化管理,而DockerDaemon中的daemon实例就是设计用来完成这一任务的实体。2、NewDaemon介绍NewDaemon函数的执行完
elsen_zhao
·
2024-02-08 12:48
通过nginx学习linux进程名的修改
目录1.缘起2.背景知识3.
源码分析
3.1准备工作3.2设置进程名字1.缘起 在运行nginx的时候,用ps查看nginx的进程信息,可能的输出如下:root421693105016:51?
码农心语
·
2024-02-08 11:30
nginx学习
LINUX
nginx
学习
linux
setproctile
修改进程名
nginx stream proxy 模块的ssl连接
源码分析
目录1.源起2.分析验证环境的配置3.
源码分析
3.1代理模块的请求入口点分析3.2发起与上游服务器的连接3.3连接回调3.4TCP连接建立成功后为上下游数据透传做准备3.5TCP连接的ssl上下文初始化
码农心语
·
2024-02-08 11:59
nginx学习
c++开发
高性能
nginx
ssl
运维
proxy
stream
源码分析
基于注解的SpringAOP源码解析(三)
注意,读完本篇文章需要很长很长时间在之前的2篇文章:AOP
源码分析
(一)AOP
源码分析
(二)中,我们搭建了SpringAOP
源码分析
的环境,介绍了@EnableAspectJAutoProxy注解和postProcessBeforeInstantiation
Java学习录
·
2024-02-08 08:18
View#post(Runnable runnable)为什么能拿到view的宽高。
基于androidsdk-23的
源码分析
,文章分成两个部分,实际上我是先写第二部分了再写第一部分的。第一部分看一下view.post的内部。
HWilliamgo
·
2024-02-08 08:24
【Java】ArrayList和LinkedList的区别是什么
目录1.数据结构2.性能特点3.
源码分析
4.代码演示5.细节和使用场景ArrayList和LinkedList分别代表了两类不同的数据结构:动态数组和链表。
王果冻ddd
·
2024-02-08 07:54
java
开发语言
【深入浅出 Yarn 架构与实现】6-4 Container 生命周期
源码分析
本文将深入探讨AM向RM申请并获得Container资源后,在NM节点上如何启动和清理Container。将详细分析整个过程的源码实现。一、Container生命周期介绍Container的启动由ApplicationMaster通过调用RPC函数ContainerManagementProtocol#startContainers()发起请求,NM中的ContainerManagerImpl组件
大数据王小皮
·
2024-02-08 07:27
深入浅出Yarn架构与实现
架构
java
大数据
Spring框架入门指南
Spring生命周期Spring创建完毕想要初始化一些操作注解的使用与开发Spring配置类加载XML配置文件静态工厂方法和实例工厂方法循环依赖(循环引用)三级缓存解决循环依赖问题SpringAOP延申
动态代理
屈家全
·
2024-02-08 05:02
常用框架
spring
java
后端
Hyperledger-Fabric
源码分析
(Gossip-Emitter)
接下来我们来看看Emitter模块,这里初略的看就是gossip的消息发送的模块。下面我们来具体分析下启动时机funcNewGossipService(conf*Config,s*grpc.Server,saapi.SecurityAdvisor,mcsapi.MessageCryptoService,selfIdentityapi.PeerIdentityType,secureDialOptsa
Pillar_Zhong
·
2024-02-08 04:11
Spring Boot原理剖析和
源码分析
SpringBoot原理剖析和
源码分析
依赖管理问题一:为什么导入dependency时不需要指定版本?
左师兄zuosx
·
2024-02-08 03:53
第二十三章、AtomicInteger
源码分析
—基于CAS的乐观锁实现
1.悲观锁与乐观锁cpu是时分复用的,也就是把cpu的时间片,分配给不同的thread/process轮流执行,时间片与时间片之间,需要进行cpu切换,也就是会发生进程的切换。切换涉及到清空寄存器,缓存数据。然后重新加载新的thread所需数据。当一个线程被挂起时,加入到阻塞队列,在一定的时间或条件下,在通过notify(),notifyAll()唤醒回来。在某个资源不可用的时候,就将cpu让出,
小母牛不生产奶
·
2024-02-08 00:17
【Canal
源码分析
】Canal Server的启动和停止过程
一、序列图1.1启动启动序列图.png1.2停止停止序列图.png二、
源码分析
整个server启动的过程比较复杂,看图难以理解,需要辅以文字说明。
端木轩
·
2024-02-07 22:31
vue双向绑定的原理及实现双向绑定MVVM
源码分析
Vue双向数据绑定的原理:可以将对象的属性绑定到UI,具体的说,我们有一个对象,该对象有一个name属性,当我们给这个对象name属性赋新值的时候,新值在UI上也会得到更新。同样的道理,当我们有一个输入框或者textarea的时候,我们输入一个新值的时候,也会在该对象的name属性得到更新。数据劫持实现双向数据绑定:vue.js则是采用数据劫持结合发布者-订阅者模式,通过Object.define
前端来入坑
·
2024-02-07 19:40
Adb显示第3方应用的包名原理
Android早期版本实现原理请看Android
源码分析
-pm命令的实现,列出包名pmlistpackage,列出系统库pmlistlibraries_pmlistpackages-CSDN博客Android12
亚瑟-小郎
·
2024-02-07 16:24
adb
list
framework
android
02Nginx
源码分析
之总结内存开辟的相关函数(ngx_alloc.c,ngx_palloc.c)
02Nginx
源码分析
之总结内存开辟的相关函数(ngx_alloc.c,ngx_palloc.c)前言:写这一篇的目的是为了方便接下来的阅读,否则每次都要对应查找相应的函数,非常麻烦。
Mango酱
·
2024-02-07 15:53
Nginx源码分析
nginx
数据结构
DataX详解和架构介绍
系列文章目录一、DataX详解和架构介绍二、DataX
源码分析
JobContainer三、DataX
源码分析
TaskGroupContainer四、DataX
源码分析
TaskExecutor五、DataX
shandongwill
·
2024-02-07 14:27
大数据
DataX
大数据
详解
深入理解AQS独占锁之ReentrantLock
源码分析
并发工具类的应用场景详解上一章我们讲解了ReentrantLock、Semaphore、CountDownLatch、CyclicBarrier等同步工具类的应用场景及实现,本章我们重点讲解ReentrantLock
源码分析
Myname_China
·
2024-02-07 12:22
并发编程
Java
java
开发语言
并发编程
读写锁ReentrantReadWriteLock&StampLock详解
传送门:深入理解AQS独占锁之ReentrantLock
源码分析
目录读写锁介绍ReentrantReadWriteLock介绍ReentrantReadWriteLock的使用应用场景锁降级读写锁设计思路
Myname_China
·
2024-02-07 12:22
并发编程
Java
java
开发语言
并发编程
Vue.js
源码分析
——模板编译和组件化
一、模板编译模板编译介绍:模板编译的主要目的是将模板(template)转换为渲染函数(render)titlesomecontent渲染函数render(h){returnh('div',[h('h1',{on:{click:this.handler}},'title'),h('p','somecontent')])}模板编译的作用Vue2.x使用VNode描述视图以及各种交互,用自己编写的VN
丽__
·
2024-02-07 12:41
Eureka
源码分析
(九)清理过期租约
下面我们来说说eureka的过期机制。其实这篇文章主要介绍的是AbstractInstanceRegistry的内部类EvictionTask。我们知道AbstractInstanceRegistry是包括了所有注册到EurekaServer上的实例。而EvictionTask就是清理过期租约的定时任务。在Eureka-Server启动时,初始化EvictionTask定时执行。protected
skyguard
·
2024-02-07 11:21
freertos
源码分析
三 task 结构与几个链表
任务控制块taskControlBLock结构体,以下为部分typedefstructtskTaskControlBlock{volatileStackType_t*pxTopOfStack;//栈顶指针ListItem_txStateListItem;//任务状态表项ListItem_txEventListItem;//事件表项UBaseType_tuxPriority;//优先级StackTy
yvee
·
2024-02-07 10:20
链表
数据结构
freertos
源码分析
四 任务创建的简单分析
任务创建xTaskCreate为TCB和TCB栈分配空间,初始化,加入就绪任务链表#if(configSUPPORT_DYNAMIC_ALLOCATION==1)BaseType_txTaskCreate(TaskFunction_tpxTaskCode,constchar*constpcName,constconfigSTACK_DEPTH_TYPEusStackDepth,void*const
yvee
·
2024-02-07 10:17
嵌入式硬件
ConcurrentLinkedHashMap
源码分析
一、简介ConcurrentLinkedHashMap是google开源的线程安全的方便并发的Map,Map利用LRU缓存机制对Map中存储对象进行换入换出管理。采用两套资源控制机制,一套同步机制,使用ConcurrentMap对对象数据进行KV存储,保证多线程并发安全地调用Map资源,而对于存储对象的换入换出管理则采用异步机制,使用Queuebuffer存储每次的因对象读写而产生的对象换入换出任
lim快乐_无限
·
2024-02-07 09:15
Flink执行流程与
源码分析
(面试必问,建议收藏)
Flink主要组件作业管理器(JobManager)(1)控制一个应用程序执行的主进程,也就是说,每个应用程序都会被一个不同的Jobmanager所控制执行(2)Jobmanager会先接收到要执行的应用程序,这个应用程序会包括:作业图(JobGraph)、逻辑数据流图(ogicaldataflowgraph)和打包了所有的类、库和其它资源的JAR包。(3)Jobmanager会把Jobgraph
大数据左右手
·
2024-02-07 09:04
Flink
大数据
flink
三级?是缓存不是片! spring的三级缓存---学习spring框架第一步
二、是怎么解决的三、反思总结
源码分析
:DefaultSingletonBeanRegistry类getSingleton方法三级缓存的作用反思总结面试点:1、三级缓存原理:如上2、二级缓存就可以解决了为什么还要有三级缓存为什么需要早期引用
苏汀star
·
2024-02-07 08:17
框架
spring
学习
java
面试
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
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
其他