- 博客(7)
- 收藏
- 关注
原创 Spring Boot之全面接管MVC
Filter 层:通过补全浏览器请求能力,适配 RESTful 风格和非 POST 请求的表单处理。核心组件层:借助初始化等 MVC 核心组件,构建 “请求路由 → 处理 → 异常处理” 的完整流程。默认配置层:通过实现,为视图解析、资源处理、错误详情等提供开箱即用的默认规则,同时预留扩展点,支持用户按需覆盖。大部分 MVC 需求(如静态资源、视图解析、异常处理 )都能 “零配置” 运行,这背后正是的功劳;而当需要定制(如修改 JSON 序列化规则、添加自定义拦截器 )时,只需实现。
2025-07-31 08:45:35
957
原创 Spring Boot 自定义starter
Spring Boot Starter 是一种简化 Spring Boot 应用开发的机制,它可以通过引入一些预定义的依赖和配置,让我们快速地集成某些功能模块,而无需繁琐地编写代码和配置文件。应用者只需要在maven中引入 starter 依赖,Spring Boot 就能自动扫描到要加载的信息并启动相应的默认配置。starter 让我们摆脱了各种依赖库的处理,需要配置各种信息的困扰。Spring Boot 会自动通过 classpath 路径下的类发现需要的 Bean,并注册进IOC容器。
2025-07-30 11:23:53
925
原创 Spring Cloud之Ribbon负载均衡原理,策略与实现
在前面其实已经进行了比较详尽的说明了,但是在这里我还是再说两句。大型网站都要面对庞大的用户量,高并发,海量数据等挑战。为了提升系统整体的性能,可以采用垂直扩展和水平扩展两种方式。垂直扩展:在网站发展早期,可以从单机的角度通过增加硬件处理能力,比如 CPU 处理能力,内存容量,磁盘等方面,实现服务器处理能力的提升。但是,单机是有性能瓶颈的,一旦触及瓶颈,再想提升,付出的成本和代价会极高。这显然不能满足大型分布式系统(网站)所有应对的大流量,高并发,海量数据等挑战。水平扩展:通过集群来分担大型网站的流量。
2025-07-30 11:14:36
778
原创 Spring自动注入相关注解讲解与辨析
/***支持多种注入点,分别是构造方法注入,字段注入,方法注入(包括 Setter 方法),参数注入(如配置方法的参数),支持自定义注解组合*/// 注解信息在运行时保留,允许反射获取// 注解信息会被包含在 JavaDoc 中/*** 指示该依赖是否为必需项。* 默认为true,表示容器必须能解析该依赖。此时容器必须找到匹配的 Bean,否则抛出 NoSuchBeanDefinitionException。
2025-07-29 10:11:47
1185
原创 Docker 容器数据卷讲解与实操
容器数据卷是 Docker 中用于持久化存储容器数据的一种机制。简单来说,数据卷就像是容器与宿主机之间的 "共享文件夹"Docker 将应用与运行的环境打包形成容器运行, Docker容器产生的数据,如果不通过 docker commit 生成新的镜像,使得数据做为镜像的一部分保存下来, 那么当容器删除后,数据自然也就没有了。为了能保存数据在Docker中我们使用容器数据卷。也为了避免容器内部数据难以与外部(宿主机或其他容器)交互的问题。
2025-07-29 09:37:06
866
原创 SpringBoot路径匹配与内容协商详细详解
Spring框架5.3及后续版本中,路径匹配机制从传统的AntPathMatcher升级为更高效的PathPatternParser。新机制在性能上提升6-8倍吞吐量,降低30-40%空间分配率,并通过严格的语法规则提供更精确的匹配。内容协商方面,SpringBoot3支持基于Accept头、URL参数和扩展名的多策略组合,核心通过HttpMessageConverter实现格式转换,开发者可自定义YAML等格式支持。@ResponseBody注解触发内容协商流程,由RequestResponseBodyM
2025-07-28 11:02:19
1324
原创 Feign的工作原理及其源码分析
首先,Fegin 是一个声明式的 HTTP 客户端,它的主要作用是简化微服务之间的 HTTP 调用流程。通过 Feign,开发者可以像调用本地方法一样调用远程服务的接口,无需手动编写复杂的 HTTP 请求代码(如使用 RestTemplate 构建请求、处理响应等)。Feign 不做任何请求处理,通过处理注解相关信息生成 Request,并对调用返回的数据进行解码,从而实现简化 HTTP API 的开发。
2025-07-26 12:54:02
1197
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅