自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 Mac中修改Docker镜像配置提示This can prevent Docker from starting, reset your daemon settings if it hangs.解决

在Mac中安装后的Docker,配置国内镜像后提示:This can prevent Docker from starting, reset your daemon settings if it hangs.重启完之后,重新敲 docker info查询配置是否生效。解决方法:重启Docker重新加载配置即可!配置之后提示这串错误提示。

2025-01-24 17:15:52 2066

原创 Spring源码_07_读取xml配置文件标签

上一章讲到了Spring的IOC容器启动流程和refresh刷新方法中的前面几个比较简单的方法。本文是针对Spring中是如何加载我们配置的xml配置文件中标签,比如解析等标签,封装等注册到容器中。为后续实例化提供基础准备~虽然现在大多数不用这种xml配置去解析bean定义信息了,但是在早期中,这种xml用得多,像注解这些方式都是后面才添加。所以了解xml可以体验到最原始的Spring的加载方式。当然本章节只会讲到bean标签和property标签组合加载解析到的bean定义信息。

2024-12-27 17:52:01 705

原创 Spring源码_06_IOC_refresh_预刷新和创建BeanFactory对象

上一章刚好讲到了refresh容器刷新的方法,从本章开始就是对refresh中的每一个方法进行具体的解释。本章是针对第一个方法:容器刷新前的前置准备、 第二个方法:创建。

2024-12-26 14:13:56 876

原创 Spring源码_05_IOC容器启动细节

前面几章,大致讲了Spring的IOC容器的大致过程和原理,以及重要的容器和beanFactory的继承关系,为后续这些细节挖掘提供一点理解基础。掌握总体脉络是必要的,接下来的每一章都是从总体脉络中,去研究之前没看的一些重要细节。本章就是主要从Spring容器的启动开始,查看一下Spring容器是怎么启动的,调用了父类的构造方法有没有干了什么。

2024-12-25 20:03:17 1489

原创 Spring源码_04_BeanFactory的类继承关系图

是 Spring 框架中的一个核心类,它是接口的一个抽象实现,提供了 Bean 工厂的基本功能和通用的 Bean 创建逻辑。是所有具体 Bean 工厂(如和)的基类,它实现了接口,并提供了一些重要的功能,如 Bean 的创建、获取、缓存(由于代码实在太多了,也就只能随便看一点点了)@Override//实现beanFactory的getBean接口doGetBean有没有感觉很熟悉,上一章节的内容里面获取bean对象就有进入到这个方法。

2024-12-24 10:32:59 841

原创 Spring源码_03_IOC容器总体过程

前面几章主要介绍了Spring容器的一些核心类和功能,以及Ioc的介绍和处理功能的大致流程。当然前面还没怎么从源码角度开始。这一章就是开始从源码角度来分析spring框架了。这一章主要讲的是Ioc的总体过程,会跟前两章画到的图对应起来,先简单了解Spring的Ioc机制和总体流程。后面的每一章都会开始对每个细节进行挖掘⛏️。

2024-12-23 10:39:04 782

原创 本地maven项目打包部署到maven远程私库

首先要确保你当前能访问到你的私库,能拉私库的maven依赖即可。

2024-12-19 09:43:10 599

原创 SpringBoot自己写的maven项目-配置文件提示

只要是maven打包后,会自动在claess/META-INF路径下生成spring-configuration-metadata.json,2、必须要有ConfigurationProperties和Configuration。3、不能有ConstructorBinding注解(看了其他博客)这个json里面有properties这些有内容就成功。1、必须每个属性都有get,set。这样就ok了,成功有提示了!

2024-12-19 09:22:20 397

原创 Spring源码_02_IOC容器继承关系

抽象应用上下文容器,这个就非常重要了,他的主要功能是定义了容器刷新的固定流程,利用了模版方法的设计模式,不同子类会去实现这些方法。这个类的方法太多。下面抽取部分重要的代码出来:重点就是这个refresh方法,其实就是定义了容器刷新过程,也包括配置的加载,解析,beanDefinition封装,实例化,初始化等等。就是第一章讲的流程。这个方法里面的有些方法都是交给子类去扩展实现。(这就是模版方法的精髓,父类规定流程,子类具体扩展)@Override//容器刷新的前置准备。

2024-12-12 14:42:50 640

原创 Spring源码_01_入门开始

本文是对Spring源码研究入门的介绍,会大致了解Spring容器的总体流程,后面会进行一系列文章的创建,对每个源码的细节进行死抠,将整个流程可以串起来。Spring是Java生态的基石,是其他框架的底座。想了解其他Spring系列框架(springmvc、springBoot、springCloud),就必须先熟悉Spring。IOC、AOP,相信用过Spring的同学,绕不开使用这两个功能。而AOP的使用离不开IOC的功能,所以学习IOC是重中之重。

2024-12-11 15:19:04 1048

原创 Spring源码搭建-踩坑之后的详细方案

Spring源码构建过程真的是太坑了。对于没学过gradle的同学一点都不友好接下来就是我踩坑了无数遍才成功的构建过程。希望可以帮助到大家,少走一点弯路。构建不成功也就容易放弃研究Spring源码了

2024-12-10 15:42:38 886 1

原创 新手看Java框架源码的技巧

学习源码有什么用呢?增强自己的技术功能和阅读能力可以借鉴别人的代码风格和解决思路用在自己平时的代码中二次开发必须具备的功能出了bug不用担心了,不需要疯狂百度慌得一批提高自己的编程功能。平时看源码一定要有技巧,不是一股脑往里面直接看源码,本文介绍了新手如何看源码的方法。。。。

2024-12-05 10:01:50 1014

原创 Mybatis_原理_08_插件模块

Mybatis定义了插件机制,可让用户自定义增强4个核心类:Executor、StatmentHandler、ParamerHandler、ResultSetHandler。用了动态代理 + 责任链模式,对4个对象进行代理增强。可用于:比如干预sql的执行(pageHelper分页),对sql语句进行改写(自定义分表),参数映射干预处理,返回值设置处理。加载配置的Plugins列表,加载完只是存在Configuration中而已。

2024-12-03 17:57:55 883

原创 Mybatis_原理_07_类型转化模块

类型转化是Mybatis中一个的一个基础模块,主要是用于Java层面到Jdbc层面的映射转换。比如参数设置的时候,从Java类型转化成Jdbc类型。查询数据库返回结果集时,用Jdbc类型转化成Java数据类型。这个转化的功能就是基于TypeHandler来实现的。

2024-12-03 13:56:47 787

原创 Mybatis_原理_06_反射模块

Mybatis的反射模块是基础模块的其中之一。由于在Java中操作类和对象等进行反射操作十分麻烦,而且在Mybatis中涉及大量的反射操作。比如参数映射,返回值映射成具体的Java对象,所以Mybatis专门抽取了一系列反射工具类,提供强大的反射组件功能。

2024-12-01 22:57:32 976

原创 Mybatis_原理_05_数据源和事务模块

本文介绍了Mybatis的数据源模块和事务模块,从如何加载解析配置,以及在源码哪些地方怎么使用。数据源其实就是对Connection连接的管理,通过连接池管理数据库连接,提高性能和资源利用率。MyBatis 的事务管理模块是其核心功能之一,负责确保数据库操作的原子性和一致性。事务管理模块可以通过多种方式配置,以适应不同的应用场景。MyBatis 支持两种主要的事务管理器类型:JDBC 和 MANAGED。

2024-11-25 16:14:54 811

原创 Mybatis_原理_04_基础模块_日志模块

Mybatis是如何实现日志功能的呢?市面上又有非常多的日志框架,比如:log4j、slf4j、logback等......Mybatis提供了一个灵活的日志模块,支持多种日志框架。通过配置日志框架,可以方便地记录 MyBatis 的运行日志,帮助调试和监控应用程序。

2024-11-24 21:50:28 823

原创 Mybatis_原理_03_缓存模块

MyBatis 是一个流行的 ORM(对象关系映射)框架,用于简化 Java 应用程序与数据库之间的交互。为了提高性能和减少数据库访问次数,MyBatis 引入了缓存模块。缓存模块可以帮助应用程序在多次查询相同的数据时,直接从缓存中获取结果,而不是每次都去数据库中查询。本文是对Mybatis的一二级缓存入手,从源码层级理解

2024-11-24 16:30:20 862

原创 Mybatis_原理_02_配置解析

mybatis最开始还是配置的解析,将主配置文件和各个mapper.xml文件的CRUD等标签信息进行解析这一章就是详细查看配置解析的内容。

2024-11-23 17:30:21 727

原创 Mybatis_原理_01_总体流程

本文介绍了Mybatis的架构:基础支撑层、核心处理层、接口层,Mybatis的基本运行原理流程,配置加载、sql解析、sql参数和执行以及获取返回值。后续会对整个mybatis的每个模块进行继续解析,先开个头

2024-11-22 18:05:31 568

原创 Mybatis自定义插件实现分表

自定义mybatis分表组件功能:1、带分片参数的增删改2、查询和支持pageHelper分页查询(带不带分片参数都支持)3、可以结合tkMapper和pageHelper无缝使用

2024-11-13 15:55:56 1317 1

原创 Kubesphere中安装apisix的问题

Apache APISIX 是一款开源的高性能、动态云原生网关,由深圳支流科技有限公司于 2019 年捐赠给 Apache 基金会,当前已经成为 Apache 基金会的顶级开源项目,也是 GitHub 上最活跃的网关项目。Apache APISIX 当前已经覆盖了网关,LB,Kubernetes Ingress,Service Mesh 等多种场景。

2024-08-12 14:41:39 1652

原创 Kubesphere搜索镜像问题

如果安装完Kubesphere后,在K8s集群中的节点的docker即使配置了镜像加速,但是kubesphere的web页面中的镜像搜索是走api的功能,跟集群中的docker配置无关,默认访问docker.io的镜像还是访问不到!解决方法:1、只能将docker.io的镜像替换成国内镜像(强烈推荐【daocloud】、中科大、阿里云等)2、建立自己的harbor私库,镜像也是需要利用科学上网工具或者从国内镜像仓库地址下载后上传。

2024-08-09 14:50:17 2600 2

原创 使用sealos部署kubernetes集群

本次使用3台主机完成,其中2台主机为master节点,1台主机为worker节点。

2024-07-19 11:02:26 1103

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除