- 博客(9)
- 收藏
- 关注
原创 1.MySQL的执行原理-2
MySQL执行一个查询可以有不同的执行方案,它会选择其中成本最低,或者说代价最低的那种方案去真正的执行查询。I/O成本我们的表经常使用的MyISAM、InnoDB存储引擎都是将数据和索引都存储到磁盘上的,当我们想查询表中的记录时,需要先把数据或者索引加载到内存中然后再操作。这个从磁盘到内存这个加载的过程损耗的时间称之为I/O成本。CPU成本读取以及检测记录是否满足对应的搜索条件、对结果集进行排序等这些操作损耗的时间称之为CPU成本。对于InnoDB存储引擎来说,页是磁盘和内存之间交互的基本单位。
2025-04-04 09:00:00
487
原创 1. MySQL的执行原理-1
为了方便讲述,我们建立两个简单的演示表并给它们写入数据:连接的本质就是把各个连接表中的记录都取出来依次匹配的组合加入结果集并返回给用户。所以我们把e1和e2两个表连接起来的过程如下图所示:这个过程看起来就是把e1表的记录和e2的记录连起来组成新的更大的记录,所以这个查询过程称之为连接查询。连接查询的结果集中包含一个表中的每一条记录与另一个表中的每一条记录相互匹配的组合,像这样的结果集就可以称之为笛卡尔积。
2025-04-04 08:00:00
598
原创 MyBatis整合Spring的原理分析
设计模式类工厂模式建造者模式单例模式代理模式绑定:MapperProxy 延迟加载:ProxyFactory <br/>插件:PluginSpring <br>集成MyBaits: SqlSessionTemplate的内部SqlSessionInterceptorMyBatis<br>自带连接池:PooledConnection<br/>日志打印:ConnectionLogger、StatementLogger适配器模式。
2025-04-03 10:57:15
646
原创 SpringBoot自动装配的时候为什么没有走selectImports方法?
本文首先需要大家对SpringBoot的自动装配比较清楚,如果不清楚的可以移步我之前介绍的自动装配的相关视频和文章。
2025-04-03 10:45:10
737
原创 SpringBoot源码之Tomcat加载原理
我们想要搞清楚在SpringBoot启动中到的是如何集成的Tomcat容器,这个就需要我们先对Tomcat本身要有所了解,不然这个就没办法分析了,所以我们先来回顾下Tomcat的基础内容。Tomcat版本是8.5.73。
2025-04-03 10:29:59
515
原创 重新认识SpringBoot
为了更好的掌握SpringBoot的内容,我需要先给大家介绍下Spring注解编程的发展过程,通过该过程的演变能够让大家更加清楚SpringBoot的由来。
2025-04-02 16:26:54
894
原创 SpringBoot自动装配原理分析(二)
在前面的分析中,Spring Framework一直在致力于解决一个问题,就是如何让bean的管理变得更简单,如何让开发者尽可能的少关注一些基础化的bean的配置,从而实现自动装配。所以,所谓的自动装配,实际上就是如何自动将bean装载到Ioc容器中来。实际上在spring 3.x版本中,Enable模块驱动注解的出现,已经有了一定的自动装配的雏形,而真正能够实现这一机制,还是在spirng 4.x版本中,conditional条件注解的出现。
2025-04-02 11:32:41
736
原创 SpringBoot自动装配原理分析(一)
为什么要讲SPI呢?因为在SpringBoot的自动装配中其实有使用到SPI机制,所以掌握了这部分对于SpringBoot的学习还是很有帮助的。,全称为 Service Provider Interface,是一种服务发现机制。它通过在ClassPath路径下的文件夹查找文件,自动加载文件里所定义的类。这一机制为很多框架扩展提供了可能,比如在Dubbo、JDBC中都使用到了SPI机制。我们先通过一个很简单的例子来看下它是怎么用的。案例介绍先定义接口项目。
2025-04-02 11:20:00
288
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人