![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
springboot源码解析
文章平均质量分 88
smart哥
一名有10余年经验的互联网老兵,历经从传统软件公司到大型互联网公司的洗礼,早年在中兴通讯等大型通信公司担任项目leader,后随着互联网的崛起,先后在前美团支付等大型互联网公司担任架构师。对互联网架构底层技术有相当的研究和独特的见解,在多个领域有着丰富的实战经验。
展开
-
SpringBoot相关知识点总结
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-31 08:32:05 · 739 阅读 · 0 评论 -
Spring Boot源码之旅五十五ConfigFileApplicationListener配置文件加载原理四
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-31 08:29:43 · 482 阅读 · 0 评论 -
Spring Boot源码之旅五十四ConfigFileApplicationListener配置文件加载原理三
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-30 08:25:39 · 686 阅读 · 0 评论 -
Spring Boot源码之旅五十三ConfigFileApplicationListener配置文件加载原理二
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-30 08:20:26 · 643 阅读 · 0 评论 -
Spring Boot源码之旅五十二ConfigFileApplicationListener配置文件加载原理一
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-30 08:15:54 · 973 阅读 · 0 评论 -
Spring Boot源码之旅五十一@ConfigurationProperties原理二
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-29 09:56:01 · 663 阅读 · 0 评论 -
Spring Boot源码之旅五十@ConfigurationProperties原理一
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-29 09:53:30 · 1035 阅读 · 0 评论 -
Spring Boot源码之旅四十九@Value原理详解
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-29 09:48:59 · 630 阅读 · 0 评论 -
Spring Boot源码之旅四十八SpringMVC源码细节之异常处理四
首先创建一个异常解析器,实现HandlerExceptionResolver接口即可,这里异常视图是error1。视图文件定义一个配置类,实现接口,覆盖方法,把自定义的异常解析器添加进去即可。原创 2024-03-28 08:55:56 · 507 阅读 · 0 评论 -
Spring Boot源码之旅四十七SpringMVC源码细节之异常处理三
我们自定义一个错误页面吧,比如我想用Thymeleaf来渲染,那得导入这个包,然后我们知道错误错误视图名字叫做error,所以得有这样一个页面,创建一个error.html放在下:内容就是:这些属性哪里来的,debug里看到的,其实是过程当中一步步设置进去的啦,有兴趣你可以跟一下:自定义异常增强类,处理方法得有注解,注解属性里面也可以定义异常类型,不过这个只能用于处理:为什么只能用于处理,就看的匹配方法:然后在处理的时候有这么一段,就是获取我们自定义的异常处理方法,封装成。原创 2024-03-28 08:52:09 · 687 阅读 · 0 评论 -
Spring Boot源码之旅四十六SpringMVC源码细节之异常处理二
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-28 08:48:06 · 692 阅读 · 0 评论 -
Spring Boot源码之旅四十五SpringMVC源码细节之异常处理一
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-27 15:08:12 · 527 阅读 · 0 评论 -
Spring Boot源码之旅四十四SpringMVC源码细节之BeanNameUrlHandlerMapping处理器
但是在的初始化之前的方法中,最后进行了处理器探测// 遍历所有容器里的beanName,找出beanName有uri的注册进去if (!首先看不是懒初始化的单例且处理器只是个名字的话就直接实例化,然后判断重复,根据url的不同,设置不同的处理器,一般的就是放入url和处理器的映射集合。if (!原创 2024-03-27 15:04:32 · 496 阅读 · 0 评论 -
Spring Boot源码之旅四十三SpringMVC源码细节之SimpleUrlHandlerMapping静态资源处理器二
先获取URL判断是文件路径还是网络的,然后分别尝试去查找:其实就是用类加载器去加载路径,返回URL。根据协议来判断是不是文件:最后创建一个文件对象,看是否可读且不是目录。如果是网络的话就直接连接,然后获取内容长度来判断存不存在。原创 2024-03-27 15:01:44 · 962 阅读 · 0 评论 -
Spring Boot源码之旅四十二SpringMVC源码细节之SimpleUrlHandlerMapping静态资源处理器一
我们来看看原理,获取处理器映射器的时候就到这个方法里,其实就是进行uri的匹配,匹配到了再解析uri参数,最后封装成执行链加入拦截器返回。@Nullable// 直接能匹配上= null) {//如果存在的话if (handler instanceof String) {//只是名字的话要实例化uri模式匹配for (String registeredPattern : this.handlerMap.keySet()) {//遍历进行匹配//匹配上就添加进去if (!原创 2024-03-27 08:53:39 · 583 阅读 · 0 评论 -
Spring Boot源码之旅四十一SpringMVC源码细节之深入数据绑定三
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-27 08:49:02 · 808 阅读 · 0 评论 -
Spring Boot源码之旅四十SpringMVC源码细节之深入数据绑定二
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-27 08:45:47 · 883 阅读 · 0 评论 -
Spring Boot源码之旅三十九SpringMVC源码细节之深入数据绑定一
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-26 08:34:48 · 462 阅读 · 0 评论 -
Spring Boot源码之旅三十八SpringMVC源码细节之深入模型方法三
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-26 08:31:59 · 903 阅读 · 0 评论 -
Spring Boot源码之旅三十七SpringMVC源码细节之深入模型方法二
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-26 08:29:08 · 666 阅读 · 0 评论 -
Spring Boot源码之旅三十六SpringMVC源码细节之深入模型方法一
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-26 08:26:42 · 518 阅读 · 0 评论 -
Spring Boot源码之旅三十五SpringMVC源码细节之拦截器
只是输出信息。原创 2024-03-25 20:48:02 · 809 阅读 · 0 评论 -
Spring Boot源码之旅三十四SpringMVC源码之DispatcherServlet的处理分发结果
处理方法参数自由度很大,只要有参数解析器就可以解析出来,内部是调用反射的。参数绑定可以自定义设置,只要符合绑定的要求就可以进行请求参数的绑定,包括表单和uri的参数。视图解析器会根据处理方法的返回值去寻找解析器处理,可以自定义视图解析器。在处理方法前还有模型方法要调用,模型方法的执行跟处理器方法一样,都是有参数解析,但是返回值是直接放进模型里的。拦截器会在处理器适配器处理前,处理后,以及请求处理完成后处理。但是如果拦截器处理前的处理返回false。原创 2024-03-25 20:21:42 · 846 阅读 · 0 评论 -
Spring Boot源码之旅三十三SpringMVC源码之RequestMappingHandlerAdapter方法调用原理六
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-25 20:19:50 · 1049 阅读 · 0 评论 -
Spring Boot源码之旅三十二SpringMVC源码之RequestMappingHandlerAdapter方法调用原理五
简单的来说就是一般的字符串参数解析,先解析参数的名字,然后获取底层的请求,尝试从请求参数中获取,如果获取是空的话,有默认的话会设置默认值,如果是必须的话,会报异常,最后还会进行数据的绑定操作,细节比较复杂,不展开了。@Override@Nullable//解析名字...if (arg == null) {//值为空的话= null) {//有默认值= null) {= null) {//数据绑定操作try {//类型转换return arg;原创 2024-03-25 15:00:03 · 1281 阅读 · 0 评论 -
Spring Boot源码之旅三十一SpringMVC源码之RequestMappingHandlerAdapter方法调用原理四
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-25 14:58:03 · 841 阅读 · 0 评论 -
Spring Boot源码之旅三十SpringMVC源码之RequestMappingHandlerAdapter方法调用原理三
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-25 14:55:52 · 668 阅读 · 0 评论 -
Spring Boot源码之旅二十九SpringMVC源码之RequestMappingHandlerAdapter方法调用原理二
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-25 14:53:56 · 718 阅读 · 0 评论 -
Spring Boot源码之旅二十八SpringMVC源码之RequestMappingHandlerAdapter方法调用原理一
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-25 07:52:50 · 286 阅读 · 0 评论 -
Spring Boot源码之旅二十七SpringMVC源码之DispatcherServlet的getHandlerAdapter
这个是重点,我们要详细说。原创 2024-03-25 07:49:42 · 962 阅读 · 0 评论 -
Spring Boot源码之旅二十六SpringMVC源码之DispatcherServlet的getHandler二
继续上次的,我故意弄了个一对多的看看情况。他会都加到matches中。因为有两个所以这里需要排序,排序会根据注解中的属性来进行排序,比如参数个数,请求头个数等等,具体可以自己看下:比如我这里比较方法个数:排序后就这样:所以又会获取最好的方法:如果排序完,发现第二个和第一个比较是相同的,那就不知道要选哪个,所以会报异常。其实这里就是要放入拦截器了,先创建一个执行链,然后遍历所有拦截器,如果匹配的话就加入其中。//创建执行链。原创 2024-03-25 07:47:35 · 624 阅读 · 0 评论 -
Spring Boot源码之旅二十五SpringMVC源码之RequestMappingHandlerMapping的初始化三
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-25 07:43:48 · 721 阅读 · 0 评论 -
Spring Boot源码之旅二十四SpringMVC源码之RequestMappingHandlerMapping的初始化二
根据是处理器是String还是对象类型进行不同的封装,一般初始化的时候还没有实例,只是名字。if (handler instanceof String) {//如果是bean名字处理器名字创建:内部会获取名字对应的类型,进行方法参数信息的封装和注解相关处理。原创 2024-03-24 11:14:05 · 586 阅读 · 0 评论 -
Spring Boot源码之旅二十三SpringMVC源码之RequestMappingHandlerMapping的初始化一
这里就是获取所有容器里定义的bean名字,不是代理目标的都进行处理。if (!beanName.startsWith(SCOPED_TARGET_NAME_PREFIX)) {//代理目标不行,因为方法可能在代理的时候被重写了为创建方法,再为类创建,进行合并返回。= null) {//如果方法RequestMappingInfo不为空,就查看类上,如果有的话要合并。原创 2024-03-24 11:11:07 · 799 阅读 · 0 评论 -
Spring Boot源码之旅二十二SpringMVC源码之DispatcherServlet的getHandler一
核心方法是。@Override//获取查找路径try {//查找方法= null?finally {首先去uri映射注册器里找是否有这个方法的集合,有的话直接处理,没有的话就遍历所有的uri处理,找出最匹配的返回。@Nullable= null) {//有path匹配的直接处理if (matches.isEmpty()) {//没有就遍历所有的处理if (!matches.isEmpty()) {//有匹配的。原创 2024-03-24 11:08:57 · 832 阅读 · 0 评论 -
Spring Boot源码之旅二十一SpringMVC源码之DispatcherServlet初始化三
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-23 08:46:14 · 250 阅读 · 0 评论 -
Spring Boot源码之旅二十SpringMVC源码之DispatcherServlet初始化二
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-23 08:43:53 · 366 阅读 · 0 评论 -
Spring Boot源码之旅十九SpringMVC源码之DispatcherServlet初始化一
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-23 08:41:27 · 841 阅读 · 0 评论 -
Spring Boot源码之旅十八SpringMVC源码之web环境初始化四
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-22 19:37:29 · 588 阅读 · 0 评论 -
Spring Boot源码之旅十七SpringMVC源码之web环境初始化三
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-03-22 19:35:15 · 542 阅读 · 0 评论