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
源码系列
我的2023,如履薄冰,你说我能保住这份工吗
7月份开始连载Spring
源码系列
。相比于往年,今年的技术更新确实慢了很多,有
·
2024-02-20 16:46
2023-年度总结
redo log —— MySQL宕机时数据不丢失的原理
扫描下方二维码或者微信搜索公众号菜鸟飞呀飞,即可关注微信公众号,阅读更多Spring源码分析、Java并发编程和Netty
源码系列
文章。问题在开始阅读本文之前,可以先思考一下下面两个问题。
天堂2013
·
2024-02-20 02:00
MySQL
MySQL
redo
log
java
Netty
源码系列
之 FastThreadLocal源码
目录Netty优化方案之FastThreadLocal前言ThreadLocalThreadLocal是干什么的?为什么要使用ThreadLocal工具类去操控存取目标数据到Thread线程?ThreadLocal的使用场景目标数据存储到Thread线程对象的哪里?怎么样把一个目标数据,存储到某一线程的threadLocals(Map)中?ThreadLocal中如何解决哈希冲突(哈希碰撞)的?线
etcEriksen
·
2024-02-14 21:34
Netty源码
java
后端
netty
Sentinel-Go
源码系列
(三)滑动时间窗口算法的工程实现
要说现在工程师最重要的能力,我觉得工程能力要排第一。就算现在大厂面试经常要手撕算法,也是更偏向考查代码工程实现的能力,之前在群里看到这样的图片,就觉得很离谱。算法与工程实现在Sentinel-Go中,一个很核心的算法是流控(限流)算法。流控可能每个人都听过,但真要手写一个,还是有些困难。为什么流控算法难写?以我的感觉是算法和工程实现上存在一定差异,虽然算法好理解,但却没法照着实现。举个例子,令牌桶
捉虫大师
·
2024-02-12 17:19
Vue
源码系列
讲解——模板编译篇【二】(模板解析阶段)
目录1.整体流程2.回到源码3.总结1.整体流程上篇文章中我们说了,在模板解析阶段主要做的工作是把用户在标签内写的模板使用正则等方式解析成抽象语法树(AST)。而这一阶段在源码中对应解析器(parser)模块。解析器,顾名思义,就是把用户所写的模板根据一定的解析规则解析出有效的信息,最后用这些信息形成AST。我们知道在模板内,除了有常规的HTML标签外,用户还会一些文本信息以及在文本信息中包含过滤
小彭努力中
·
2024-02-12 15:36
Vue源码讲解
vue.js
前端
前端框架
Netty
源码系列
之 ChannelPipeline & IO处理回顾 源码
目录ChannelPipeline【包含AbstractUnsafe.write的源码流程,比之前更加深化了,必看】ChannelPipeline概念回顾ChannelPipeline的创建Inbound(输入Handler)所对应的事件传播Outbound(输出Handler)所对应的事件传播【包含AbstractUnsafe.write的源码流程,比之前更加深化了,必看】ChannelPipe
etcEriksen
·
2024-02-12 08:27
Netty源码
java
后端
netty
Vue
源码系列
讲解——虚拟DOM篇【四】(优化更新子节点)
目录1.前言2.优化策略介绍3.新前与旧前4.新后与旧后5.新后与旧前6.新前与旧后7.回到源码8.总结1.前言在上一篇文章中,我们介绍了当新的VNode与旧的oldVNode都是元素节点并且都包含子节点时,Vue对子节点是先外层循环newChildren数组,再内层循环oldChildren数组,每循环外层newChildren数组里的一个子节点,就去内层oldChildren数组里找看有没有与
小彭努力中
·
2024-02-12 06:07
Vue源码讲解
vue.js
前端
前端框架
Vue
源码系列
讲解——模板编译篇【一】(综述)
目录1.前言2.什么是模板编译3.整体渲染流程4.模板编译内部流程4.1抽象语法树AST4.2具体流程5.总结1.前言在前几篇文章中,我们介绍了Vue中的虚拟DOM以及虚拟DOM的patch(DOM-Diff)过程,而虚拟DOM存在的必要条件是得先有VNode,那么VNode又是从哪儿来的呢?这就是接下来几篇文章要说的模板编译。你可以这么理解:把用户写的模板进行编译,就会产生VNode。2.什么是
小彭努力中
·
2024-02-12 06:06
Vue源码讲解
vue.js
前端
前端框架
Vue
源码系列
4------Vue文件的入口-----Vue的初始化
这片文章主要分析,在web应用下,Runtime+Compiler构建出来的Vue.js。入口文件在Vue源码中,入口文件为src/platforms/web/entry-runtime-with-compiler.js。入口文件通过export导出的是一个Vue对象,通过import导入相关依赖组件。首先这个Vue对象来自于;而runtime/index中的Vue对象又来自于;core/inde
Emily Qin
·
2024-02-11 09:42
前端
#
Vue.js
源码解析
Vue
Vue
源码系列
讲解——虚拟DOM篇【三】(更新子节点)
1.前言在上一篇文章中,我们了解了Vue中的patch过程,即DOM-Diff算法。并且知道了在patch过程中基本会干三件事,分别是:创建节点,删除节点和更新节点。创建节点和删除节点都比较简单,而更新节点因为要处理各种可能出现的情况所以逻辑略微复杂一些,但是没关系,我们通过分析过程,对照源码,画逻辑流程图来帮助我们理解了其中的过程。最后我们还遗留了一个问题,那就是在更新节点过程中,新旧VNode
小彭努力中
·
2024-02-10 08:38
Vue源码讲解
前端
vue.js
前端框架
Vue
源码系列
讲解——变化侦测篇【下】(Array的变化侦测)
目录1.前言2.在哪里收集依赖3.使Array型数据可观测3.1思路分析3.2数组方法拦截器3.3使用拦截器4.再谈依赖收集4.1把依赖收集到哪里4.2如何收集依赖4.3如何通知依赖5.深度侦测6.数组新增元素的侦测7.不足之处8.总结1.前言上一篇文章中我们介绍了Object数据的变化侦测方式,本篇文章我们来看一下对Array型数据的变化Vue是如何进行侦测的。为什么Object数据和Array
小彭努力中
·
2024-02-09 07:57
Vue源码讲解
vue.js
前端
前端框架
Vue
源码系列
讲解——虚拟DOM篇【一】(Vue中的虚拟DOM)
目录1.前言2.虚拟DOM简介2.1什么是虚拟DOM?2.2为什么要有虚拟DOM?3.Vue中的虚拟DOM3.1VNode类3.2VNode的类型3.2.1注释节点3.2.2文本节点3.2.3克隆节点3.2.4元素节点3.2.5组件节点3.2.6函数式组件节点3.2.7小结3.3VNode的作用4.总结1.前言虚拟DOM,这个名词作为当下的前端开发人员你一定不会陌生,至少会略有耳闻,但不会闻所未闻
小彭努力中
·
2024-02-09 07:57
Vue源码讲解
vue.js
前端
前端框架
Vue
源码系列
讲解——虚拟DOM篇【二】(Vue中的DOM-Diff)
目录1.前言2.patch3.创建节点4.删除节点5.更新节点6.总结1.前言在上一篇文章介绍VNode的时候我们说了,VNode最大的用途就是在数据变化前后生成真实DOM对应的虚拟DOM节点,然后就可以对比新旧两份VNode,找出差异所在,然后更新有差异的DOM节点,最终达到以最少操作真实DOM更新视图的目的。而对比新旧两份VNode并找出差异的过程就是所谓的DOM-Diff过程。DOM-Dif
小彭努力中
·
2024-02-09 07:24
Vue源码讲解
前端
vue.js
读懂 FastChat 大模型部署源码所需的异步编程基础
事件循环4.await5.组合协程6.使用Semaphore限制并发数7.运行阻塞任务8.异步迭代器asyncfor9.异步上下文管理器asyncwith10.参考本文是读懂FastChat大模型部署
源码系列
的第二篇
javastart
·
2024-02-08 09:08
python
python
fastapi
gunicorn
Netty
源码系列
之 EventLoop & run()方法 源码
EventLoop[实现类为NioEventLoop,我们研究NioEventLoop即可]EventLoop是一个单线程的线程池核心作用:处理执行IO操作(accept,read,write事件),普通任务,定时任务EventLoop封装了Selector复用器,Thread线程,以及任务队列为什么EventLoop需要一个任务队列?因为EventLoop是一个单线程的线程池,如果有多个任务请求
etcEriksen
·
2024-02-08 07:18
Netty源码
java
netty
七、Nacos
源码系列
:Nacos服务发现
目录一、服务发现二、getServices():获取服务列表2.1、获取服务列表2.2、总结图三、getInstances(serviceId):获取服务实例列表3.1、从缓存中获取服务信息3.2、缓存为空,执行订阅服务3.2.1、调度更新,往线程池中提交一个UpdateTask任务3.2.2、订阅服务3.2.3、处理服务信息3.3、非订阅模式,通过grpc发送ServiceQueryReques
每天都要进步一点点
·
2024-02-08 01:36
#
Nacos源码
Nacos源码
Nacos服务发现
Nacos注册中心
Nacos
服务发现
源码系列
——ArrayList动态扩容机制
前言ArrayList继承了AbstractList类,实现了List接口,并且ArrayList底层是一个动态扩容的数组。ArrayList实现了RandomAccess接口,此接口是一个随机访问的标记接口(不需要遍历,直接通过下标访问数组元素的内存地址),此外还实现了Serializable接口支持序列化(就是将对象转化为字符序的形式,这些字符序列包括了对象的字段和方法,序列化的对象可以被写入
小白菜aaa
·
2024-02-07 08:16
Vue
源码系列
讲解——变化侦测篇【上】(何为变化侦测)
目录1.前言2.什么是变化侦测3.总结1.前言众所周知,Vue最大的特点之一就是数据驱动视图,那么什么是数据驱动视图呢?在这里,我们可以把数据理解为状态,而视图就是用户可直观看到页面。页面不可能是一成不变的,它应该是动态变化的,而它的变化也不应该是无迹可寻的,它或者是由用户操作引起的,亦或者是由后端数据变化引起的,不管它是因为什么引起的,我们统称为它的状态变了,它由前一个状态变到了后一个状态,页面
小彭努力中
·
2024-02-06 08:15
Vue源码讲解
vue.js
前端
开发语言
前端框架
Vue
源码系列
讲解——变化侦测篇【中】(Object的变化侦测)
目录1.前言2.使Object数据变得“可观测”3.依赖收集3.1什么是依赖收集3.2何时收集依赖?何时通知依赖更新?3.3把依赖收集到哪里4.依赖到底是谁5.不足之处6.总结1.前言在上一篇文章中,我们知道:数据驱动视图的关键点则在于我们如何知道数据发生了变化,只要知道数据在什么时候变了,那么问题就变得迎刃而解,我们只需在数据变化的时候去通知视图更新即可。要想知道数据什么时候被读取了或数据什么时
小彭努力中
·
2024-02-06 08:44
Vue源码讲解
前端
前端框架
vue.js
开发语言
Megatron-LM
源码系列
(七):Distributed-Optimizer分布式优化器实现Part2
1.使用入口DistributedOptimizer类定义在megatron/optimizer/distrib_optimizer.py文件中。创建的入口是在megatron/optimizer/__init__.py文件中的get_megatron_optimizer函数中。根据传入的args.use_distributed_optimizer参数来判断是用DistributedOptimiz
MLTalks
·
2024-02-04 06:22
大模型
训练框架
分布式
深度学习
人工智能
pytorch
图解java.util.concurrent并发包
源码系列
——深入理解定时任务线程池ScheduledThreadPoolExecutor
深入理解定时任务线程池ScheduledThreadPoolExecutorScheduledThreadPoolExecutor作用与用法ScheduledThreadPoolExecutor内部执行流程DelayedWorkQueueScheduledFutureTask源码分析任务提交ScheduledFutureTask的属性和方法delayedExecute(t)任务执行Schedule
黄俊懿
·
2024-02-01 21:55
java
开发语言
后端
并发编程
JUC
jvm
六、Nacos
源码系列
:Nacos健康检查
目录一、简介二、健康检查流程2.1、健康检查2.2、客户端释放连接事件2.3、客户端断开连接事件2.4、小结2.5、总结图三、服务剔除一、简介Nacos作为注册中心不止提供了服务注册和服务发现的功能,还提供了服务可用性检测的功能,在Nacos1.x的版本中,临时实例走的是distro协议,客户端向注册中心发送心跳来维持自身的健康(healthy)状态,持久实例则走的是Raft协议存储。主要有两种检
每天都要进步一点点
·
2024-02-01 19:23
#
Nacos源码
Nacos健康监测
Nacos源码
Nacos健康检查
Nacos
Mybatis
源码系列
:领略设计模式在 Mybatis 其中的应用
文章目录一、Builder模式二、工厂模式三、单例模式四、代理模式五、组合模式六、模板方式模式七、适配器模式八、装饰器模式九、迭代器模式虽然我们都知道有23种设计模式,但是大多停留在概念层面,真实开发中很少遇到,Mybatis源码中使用了大量的设计模式,阅读源码并观察设计模式在其中的应用,能够更深入的理解设计模式。Mybatis至少遇到了以下的设计模式的使用:Builder模式,例如SqlSess
Code技术分享
·
2024-02-01 02:10
mybatis
java
设计模式
MyBatis
源码系列
:MyBatis 解析配置文件、二级缓存、SQL
文章目录解析全局配置文件二级缓存解析解析二级缓存缓存中的调用过程缓存中使用的设计模式解析SQL解析全局配置文件启动流程分析Stringresource="mybatis-config.xml";//将XML配置文件构建为Configuration配置类reader=Resources.getResourceAsReader(resource);//通过加载配置文件流构建一个SqlSessionFa
Code技术分享
·
2024-01-31 06:13
mybatis
java
阅读go语言工具
源码系列
之gopacket(谷歌出品)----第二集 layers-巧妙的抽象与无聊的协议包
上一集中我们讲到了wpcap.dll的go封装方法,对于linux系统下libpcap的go封装采用的是常用的cgo方式,想了解的可以看看pcap文件夹中的pcap_unix.go。我们得到了wpcap.dll的go调用,就可以利用它来进行列举所有网络设备,例如以下代码packagemainimport("fmt""github.com/google/gopacket/pcap""log")//得
伏虎山真人
·
2024-01-26 21:08
golang
golang
驱动开发
开发语言
阅读go语言工具
源码系列
之gopacket(谷歌出品)----第一集 DLL的go封装
gopacket项目是google出品的golang第三方库,项目源码地址google/gopacket:ProvidespacketprocessingcapabilitiesforGo(github.com)gopacket核心是对经典的抓包工具libpcap(linux平台)和npcap(windows平台)的go封装,提供了更方便的go语言操作接口,里面如何实现的,接下来的文章中会有介绍。
伏虎山真人
·
2024-01-26 21:36
golang
golang
开发语言
后端
Spring手撸
源码系列
-给Bean对象注入属性
上一章是给Bean对象注入构造参数,这一章就来实现给Bean对象注入属性,一般来说类有构造方法也会有全局变量的属性,那么我们在创造的时候就需要注入进来,不能不管,这样才是一个完整的创建对象。对于属性的创建除了基本类型也会有引用类型,引用其他的Bean对象等等都要考虑。1.工程目录标红的是新添加的├─src│├─main││├─java│││└─com│││└─spring│││└─sourceco
PromisingGirl-Du
·
2024-01-25 18:02
#
spring
spring
java
后端
深入Hotspot源码与Linux内核理解NIO与Epoll
前言距离上一次发布文章将近半年左右了,具体为什么停更,说实话一部分原因是去年10月1放假之后我玩疯了....另外一部原因是总感觉文章写到一定地步之后,我有点不知道写什么了,去年主要更新的是Spring
源码系列
的文章
JAVA程序
·
2024-01-24 18:35
Vue 3.2
源码系列
(Vue.js的设计与实现)01-命令式VS声明式
我通过看完这本书后造成的一部分总结。选择挑选出重要的部分先来介绍一些基本的概念命令式与声明式运行时与编译器副作用一.声明式和命令式命令式与声明式的概念在前端框架的设计中经常会出现,那么究竟什么是命令式、什么是声明式呢?这一咖,我们就主要来明确这两个概念:命令式比如现在领导叫你实现一个大屏展示的数据1.你现在需要用到vue2.需要用到springboot3.需要去考虑一些echarts的参数...在
kangkang-
·
2024-01-21 23:51
Vue.js源码分析
vue.js
前端
javascript
Android 12.0
源码系列
之IMS(二)InputManager
Android12.0
源码系列
之IMS(二)InputManager本篇涉及到的主要代码:frameworks\native\services\inputflingerframeworks\base\services
bubbleben
·
2024-01-20 18:49
Android
12.0源码系列
android
framework
netty
源码系列
---服务端启动
1、示例代码这是netty源码中官方提供的测试代码publicfinalclassEchoServer{staticfinalbooleanSSL=System.getProperty("ssl")!=null;staticfinalintPORT=Integer.parseInt(System.getProperty("port","8007"));publicstaticvoidmain(St
性感的大表哥
·
2024-01-19 16:31
Netty
netty
湖中剑 GitHub周刊 #9 | FreeCodeCamp、图解 React
源码系列
、Portainer管理Docker
1.推荐freeCodeCamp本周Star增长:1700+,累计:333k+GitHub上排名第一的开源项目。imageFreeCodeCamp是一个自由开源的学习编程的社区,致力于帮助人们利用零散时间学习编程。它的使命是Learntocodeandhelpnonprofits(学习编程,去帮助那些非盈利组织)。FCC涵盖HTML5、CSS、React、JavaScript、Database等课
ineo6
·
2024-01-17 12:26
SpringBoot+FastJson 优雅的过滤 Response Body
Spring
源码系列
1、Spring学习之扩展点总结之后置处理器(一)2、Spring学习之扩展点总结之后置处理器(二)3、Spring学习之扩展点总结之自定义事件(三)4、Spring学习之扩展点总结之内置事件
YPhen
·
2024-01-13 09:06
SpringBoot
微服务学习
spring
boot
java
后端
Tomcat源码解析(一): Tomcat整体架构
Tomcat
源码系列
文章Tomcat源码解析(一):Tomcat整体架构目录一、Tomcat整体架构1、Tomcat两个核心组件功能2、Tomcat支持的多种I/O模型和应用层协议二、Connector
冬天vs不冷
·
2024-01-10 09:09
springmvc
tomcat
架构
java
Hive 源码解析一:Driver
本文为Hive
源码系列
的第一节(共三节)客户端部分,本节主要内容是通过源码分析总结从bin/hive启动到SQL解析转换成MR再到提交任务打印结果的一个宏观流程;第二节则针对HSQL如何解析、转换成MR
小王是个弟弟
·
2024-01-06 17:25
hive
hadoop
big
data
源码系列
篇之CardView
周五的节奏真的心情爽啊,看看书啊,看看源码啊,时间都这样毫不经意间过去了,爽啦啦!题外话就不说那么多了啊。下面进入正题,带你分析CardView这种带阴影、圆角的View是怎么一步步的实现的。来看看CardView构造器吧:publicCardView(Contextcontext){super(context);initialize(context,null,0);}publicCardView
的一幕
·
2024-01-04 04:28
react
源码系列
(1) — 创建元素组件
文章目录Babel处理JSXcreateElement类元素方法元素内置元素Suspense与lazymemo其他的symbol元素Children处理react源码版本为v16.13.1,可以下载下来结合者一起看,本节涉及到packages/react中的代码。文章的源在:https://www.yuque.com/wmaoshu/blog/gcg1ixreact一个很重要的设计原则是根据业务维
茂树24
·
2024-01-02 07:35
react
源码
react
源码
react源码
Megatron-LM
源码系列
(五): FP16使用
1.FP16参数指定训练模型要使用fp16时,训练启动参数中指定--fp16,对应megatron/arguments.py中的定义如下:group.add_argument('--fp16',action='store_true',help='Runmodelinfp16mode.')在计算lm-cross-entropy时默认是使用fp32来计算的,在开启--fp16选项的前提下可以通过指定-
MLTalks
·
2024-01-01 10:24
大模型
训练框架
深度学习
人工智能
Megatron-LM
源码系列
(六):Distributed-Optimizer分布式优化器实现Part1
1.使用说明在megatron中指定--use-distributed-optimizer就能开启分布式优化器,参数定义在megatron/arguments.py中。分布式优化器的思路是将训练中的优化器状态均匀地分布到不同数据并行的rank结点上,相当于开启ZERO-1的训练。group.add_argument('--use-distributed-optimizer',action='sto
MLTalks
·
2024-01-01 10:24
训练框架
分布式
人工智能
深度学习
pytorch
LLM
源码系列
-Baichuan2模型代码解读
本文是对百川大模型的代码解析,有助于了解其内部模型结构,以及训练和推理的一些细节。主要是对modeling_baichuan.py这个文件进行分析,以下是核心的几个类的关系核心的模型结构在BaichuanModel中,是多个MHA多头Attention模块堆叠起来的Decoder架构,下面是BaichuanModel的代码解析classBaichuanModel(BaichuanPreTraine
田小成plus
·
2023-12-31 23:59
LLM大模型
pytorch
深度学习
LLM
大模型
代码解读
百川
较真儿学
源码系列
-ThreadLocal(逐行源码带你分析作者思路)
Java版本:8u261。1简介ThreadLocal是线程本地变量(缓存),其往往用来实现在同一线程内部的变量之间进行交互的情景,不存在线程之间的交互。其对每一个线程内部都维护了一个数据,在a线程set的值,也只能在a线程里进行get。具体的使用场景:比如可以用ThreadLocal来封装数据库连接;也可以在复杂逻辑下,用ThreadLocal来作为方法之间的数据传递:如果一开始设置了一个数据,
天瑕
·
2023-12-28 08:38
Java并发编程
ThreadLocal
ThreadLocal源码分析
从源码全面解析Java 线程池的来龙去脉
作者简介:大家好,我是爱敲代码的小黄,独角兽企业的Java开发工程师,CSDN博客专家,阿里云专家博主系列专栏:Java设计模式、Spring
源码系列
、Netty
源码系列
、Kafka
源码系列
、JUC
源码系列
如果感觉博主的文章还不错的话
爱敲代码的小黄
·
2023-12-28 08:56
#
高并发
java
面试
开发语言
后端
并发
Spring
源码系列
(十)MapperScan注解的原理(二)
1.写在前面上篇博客中笔者介绍怎么Import注解中的类给变成一个BeanDefinition添加到Spring的IOC的容器中,主要调用的是这个类(MapperScannerRegistrar)的registerBeanDefinitions(),由于篇幅的原因,笔者只介绍了如何调用的MapperScannerRegistrar类中的registerBeanDefinitions()的方法。具体
了不起的盖茨比。
·
2023-12-28 08:43
Spring
java
spring
Spring读
源码系列
番外篇09--BeanWrapper的应用
Spring读
源码系列
番外篇09--BeanWrapper的应用populateBeanapplyPropertyValues小结本文主要讲解BeanWrapper在getBean流程中populateBean
Binary Oracle
·
2023-12-28 07:14
#
Spring源码研读
spring
java
jvm
Spring
源码系列
:事务原理
Spring
源码系列
:事务原理前言一.事务案例1.1项目结构和表结构1.2代码编写部分1.3配置文件1.4运行结果二.事务自定义标签解析(初始化)2.1注册InfrastructureAdvisorAutoProxyCreator
Zong_0915
·
2023-12-28 07:59
Spring
Java
java
spring
后端
Spring
源码系列
: AOP实现
Spring
源码系列
:AOP实现前言一.AOP的使用二.AOP的实现2.1创建AnnotationAwareAspectJAutoProxyCreator2.1.1注册或升级AnnotationAwareAspectJAutoProxyCreator2.1.2
Zong_0915
·
2023-12-28 07:29
Spring
Java
java
开发语言
后端
我的
源码系列
: 使用Node.js实现一个express框架
我的手写
源码系列
往期本人手写框架
源码系列
原创:从零实现一个简单版React(附源码)原创:如何自己实现一个简单的webpack构建工具【附源码】深度:手写一个WebSocket协议[7000字]深度:从零编写一个微前端框架
Peter 谭
·
2023-12-24 22:58
中间件
js
epoll
rpc
vue
较真儿学
源码系列
-MyBatis核心流程源码分析
Mybatis版本:3.5.10-SNAPSHOT。1简介MyBatis是一款优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射。MyBatis免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作。MyBatis可以通过简单的XML或注解来配置,并将原始类型、接口和JavaPOJO映射到数据库的记录中。现在国内的开发环境不知道从什么时候开始传出一种风气,不管开发出什么框架,都要往大而
天瑕
·
2023-12-22 03:00
MyBatis
MyBatis
设计模式
Spring
spring
源码系列
(六)——番外篇如何编译spring的源码
学习spring源码的第一步便是需要去编译源码;很多网友在编译spring源码的时候遇到了困难继而放弃了spring源码的学习;这篇文章主要来阐述如何正确的编译spring源码;首先你得检查你的网线能正常上网;最好网速还行;不然你会疯掉下载spring源码下载spring源码可以选择github或者码云(国内的);下载方式可以选择gitclone或者直接下载一个zip包;笔者推荐使用gitclon
geejkse_seff
·
2023-12-16 12:51
java
java
后端
[Springboot
源码系列
] 浅析自动配置原理
文章目录自动配置类原理`AopAutoConfigurartion`条件装配的底层原理`@Conditional``@ConditionalOnXxx`自动配置类原理publicclassAutoConfApplication{publicstaticvoidmain(String[]args){GenericApplicationContextcontext=newGenericApplicat
程序员三木
·
2023-12-15 10:52
Java探索者之路
spring
boot
java
后端
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
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
其他