自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(255)
  • 问答 (1)
  • 收藏
  • 关注

原创 IntelliJ IDEA 2025.2.x的小惊喜和小BUG

每次提交之后,都会出现这样的问题,需要手动同步一下才可以。原本用的好好的,修改完代码打算提交时,发现提交的代码不见了,显示本地没有改动。软件的更新换代可能会存在BUG,作为程序员的大家可能都会深有体会,只是大小不同而已。以前的版本只有前5项,而2.x版本开始增加了图中框的两个,目前还是处于测试阶段。版本,本以为高版本的会修复掉,直到升级到2.x的最高版本问题依然存在。的,开始的时候怎么用怎么别扭。的支持、主题的变化、性能的提升,布局的改变等等。是免费的,免费的和收费的本身就没有可比性。带点灰色,比较柔和。

2025-11-24 09:47:48 89

原创 OCR告别付费!分享两款可部署的开源项目

Umi-OCR是一个免费、开源、可离线的 OCR 文字识别工具,由开发者hiroi-sora使用Python编写。它的名字中 “Umi” 在日语里是“海”的意思,寓意着其“海纳百川”的特性。该项目是基于百度开源的PaddleOCR开发,对中文和英文的识别准确率非常高,同时支持多国语言。它的主要目标是提供一个简单易用、功能强大且完全离线的图片文字识别解决方案,完美保护用户隐私,因为所有识别过程都在本地计算机上完成,无需连接任何外部服务器。不仅支持本地部署,还支持windowswindows。

2025-11-21 09:42:13 266

原创 Redis分布式锁不止set nx那么简单

Lock4j是一个分布式锁组件,其提供了多种不同的支持以满足不同性能和环境的需求,立志打造一个简单但富有内涵的分布式锁组件。其特性就是简单易用,功能强大,扩展性强,支持redissionzookeeper。可混用,支持扩展。该开源项目来自苞米豆社区,你可能没听过。但是你一定听过,它的作者和Lock4j的作者是同一人。

2025-11-20 10:08:59 950

原创 还在为HTML转PDF发愁?再介绍两款工具,为你保驾护航!

是iText7套件的一个附加组件,专门用于将HTML和CSS内容转换为PDF文档。它基于iText核心PDF生成引擎,提供了高质量的HTML到PDF转换功能。性能表现非常优异。完整的HTML5和CSS3支持:能够处理现代网页布局和样式字体嵌入:自动处理Web字体和系统字体响应式设计:支持媒体查询和响应式布局高保真转换:保持HTML内容的视觉保真度Java原生:专为Java生态系统设计GitHub地址:https://github.com/itext/itext-pdfhtml-java。

2025-11-13 10:15:28 433

原创 SpringBoot邮件发送怎么玩?比官方自带的Mail更好用的三方工具

Simple Java Mail 是一个拥有超简洁API的邮件库。它是世界上使用起来最简便的(Java)邮件库,可通过SMTP发送电子邮件。这个库让你无需处理诸如之类的底层API、繁琐的trycatch结构、内部类以及其他无用的东西。它是一个功能强大、特性完备的邮件库,同时又小巧且轻量。核心模块:GitHub地址:https://github.com/bbottema/simple-java-mail官网地址:https://www.simplejavamail.org/SMS4J。

2025-11-12 09:19:51 429

原创 为什么0.1 + 0.2不等于0.3?一次讲透计算机的数学“Bug”

在 IEEE 754 出现之前,不同厂商的计算机可能用不同的方式表示小数,导致程序在一台机器上运行正常,在另一台机器上结果却不一样。第24位是1,后面还有,所以粘滞位为1。根据向最接近的偶数舍入(默认舍入模式):第24位是1,且后面有非零位,所以需要向上舍入(即第23位加1)。它就像一套世界通用的“小数书写法则”,确保了在不同计算机上,同一个小数能有相同的表示,并且计算结果是可预测的。多处的以为是直接舍去还是进一,是有逻辑处理的。案例中直接打印,没有问题是因为没有参与二进制位的运算,所以不会有精度的丢失。

2025-11-11 13:31:28 846

原创 百度统计、Google Analytics平替开源网站分析工具:Umami

Umami是一款开源、注重隐私的网络分析工具,可作为谷歌分析的替代方案。它能提供有关网站流量、用户行为和性能的重要见解,同时始终将数据隐私放在首位。不收集或存储个人数据,无需使用Cookie,并且符合GDPR和PECR标准。优势:极简主义与用户体验界面清爽通过精美的图表和列表一目了然地展示,聚焦核心指标以隐私保护为核心无需Cookie警告,默认不收集任何个人身份信息,也不使用Cookie进行跟踪开源与自托管MIT 许可证下的开源软件,可以免费使用、修改和分发强大的多功能支持。

2025-11-07 09:56:37 796

原创 消息积压、排查困难?Provectus Kafka UI 让你的数据流一目了然

在了解这款kafka-ui之前,其实还有发现了其他两个类似的开源项目,并且star数还不低。我们这里要介绍是第一个。其他两个对比下来,小编觉得功能上并没有第一个丰富。所以最终就选择了。有兴趣的可以去试试。是一个功能丰富、基于 Web 的开源用户界面,专门为 Apache Kafka 设计,用来管理集群。它提供了一个直观的可视化控制台,让用户无需记忆复杂的命令行指令,就能轻松地执行从基本的主题管理到复杂的消费者组监控等各项任务。GitHub上提供操作的动图以及部署命令,我们以Docker部署为例。

2025-11-06 09:23:27 709

原创 被卖的Hutool出AI模块了!它如何让Java调用大模型变得如此简单?

Hutool-ai是在5.8.38版本里面新增的模块,是Hutool工具库中用于对接各大 AI 模型的工具模块,提供了统一的API接口来访问不同的 AI 服务。目前支持DeepSeekOpenAIGrokOllama和豆包等主流 AI 大模型。截止小编更新(2025.10.30),Hutool的版本已经到5.8.41了。官方文档:https://hutool.cn/GitHub地址:https://github.com/chinabugotech/hutoolGitee。

2025-11-05 10:48:37 251

原创 你的项目还在用MyBatis吗?或许这个框架更适合你

Easy-Query是一个致力于简化 Java 数据库操作的高效、灵活的ORM框架。它的核心目标是让查询变得“简单”(Easy),通过极简的API设计、强大的链式操作和智能的SQL生成,让开发者能够以更少的代码完成复杂的数据交互任务。既能完成单表的操作,也能通过隐式结构进行Join关联操作等。Easy-Query是一款java下最强的、最懂查询的orm。Easy-QueryGitHub地址:https://github.com/dromara/easy-queryGitee。

2025-11-04 14:07:46 1030

原创 Spring Boot还能这样玩?同时监听多个端口的黑科技

假设有一套系统运行平稳,得到合作商的青睐,想要有一套一模一样的系统。领导要求重新部署一套,但是为了节省经费,领导不提供多余的服务器,希望能够在原来的服务器的基础上技能让自己用,也能让合作商使用。我们将在不改变控制层代码的情况下,通过配置的方式完成资源的隔离。而多端口真正的使用场景,小编暂时还想不到。于是自己玩了一下,感觉蛮有意思的,就整理一下分享给大家。这就实现了一个接口三个端口都可以访问的效果。这里的配置直接使用控制层的类,也可以通过自定义的注解获取比对。开放两个端口,一个给自己用,一个给合作商用。

2025-11-04 10:42:28 313

原创 聊聊Spring里那个不打扰Controller就能统一改响应的“神器”

在程序编码的时候,我们总会统一返回响应参数,以规范开发。但是面对老项目改造的时候,有没有遇到过返回的参数不统一的情况,自己又不原因一个个的纠正。强迫症的解决方案,就是一个个的修改每一个方法。这种方案自然可行,但是当方法很多时,工作量就非常大,显然不太适合。为防止自定义的方法返回解析器被系统默认的解析器有限取代执行,我们需要调整解析器的位置。:什么样的条件进入,允许处理,类似开关。于是,就想从框架层面解决统一返回的问题。结果这里就不演示了,和上面的结果一致。的情况下,完成响应参数的统一封装。

2025-10-30 14:10:34 488

原创 Spring Boot全局异常处理指南

中一个非常强大且实用的注解,它的核心作用是提供全局的、跨多个控制器的增强处理。在很多博主分享的文章中,都会说这里需要定义所有需要处理的异常。本节我们将借鉴框架提供的异常处理机制,完善全局异常的处理,并聊聊背后的故事。如果想要更深层次的处理异常就需要自定义的异常处理器了。但是自定义的异常处理器,可以控制异常是否继续向后执行,还是直接返回客户端。按照小编的设想,异常的处理如果只关心异常的信息提示,那只要分出。配置项的时候,才发现原来配置项也可以进行异常的统一处理。原本全局异常的处理,上面的内容已经足够了。

2025-10-30 09:30:39 579 1

原创 【开发者必备】Spring Boot 2.7.x:WebMvcConfigurer配置手册来了(七)!

需要实现接口。@Override> clazz) {@Overrideerrors.rejectValue("content", "WJSON_001","content不能为空");errors.rejectValue("version", "WJSON_002","version不能为空");自定义校验器简单的判断了参数是否为空。@Override。。。。");// 添加自定义消息代码codeList.add(errorCode + "_这是我自定义的Code之一");

2025-10-29 09:27:16 340

原创 【开发者必备】Spring Boot 2.7.x:WebMvcConfigurer配置手册来了(六)!

Override@Override返回值为null表示继续后面的异常解析器解析,返回表示异常解析中断,直接返回结果。

2025-10-27 15:01:33 869

原创 【开发者必备】Spring Boot 2.7.x:WebMvcConfigurer配置手册来了(五)!

Slf4j@Override@Override定义的方法通过判断接收的参数类型是不是Wjson(自定义的类),如果是,就处理参数,额外在参数增加版本号v1。。。。");@Override。。。。");// 标记请求已处理,避免视图解析response.getWriter().write("<h1>测试</h1>");假设我们要拦截返回值为Wjson的方法,统一跳转自定义页面。其中非常重要,表示请求已经处理,不会再次被框架处理。

2025-10-27 11:15:28 432

原创 【开发者必备】Spring Boot 2.7.x:WebMvcConfigurer配置手册来了(四)!

一般出现在前后端分离的项目中,浏览器基于同源策略的安全考虑可能会出现跨域问题。使用的方法也很简单,只需要配置那些路径允许跨域即可。本节的分享都是非常常用的配置,在开发中可能会通过其他方式实现。了解会发现,其实很多配置可能已帮我们节省很多代码。:视图解析器,决定如何将控制器返回的逻辑视图名解析为实际的视图对象。用来注册路径和视图的映射关系,并且不用编写具体的控制层。视图解析器的混用,在之前的文章中专门讲过。:配置全局 CORS(跨域资源共享)规则。:简化页面跳转配置,无需编写控制器。:配置请求的返回状态码。

2025-10-24 10:45:27 259

原创 【开发者必备】Spring Boot 2.7.x:WebMvcConfigurer配置手册来了(三)

Slf4j@Overridelog.info("ApiInterceptor preHandle 执行了...");@Overridelog.info("ApiInterceptor postHandle 执行了...");@Overridelog.info("ApiInterceptor afterCompletion 执行了...");@Slf4j@Overridelog.info("WebApiInterceptor preHandle 执行了...");@Override。

2025-10-23 18:07:03 236

原创 【开发者必备】Spring Boot 2.7.x:WebMvcConfigurer配置手册来了(二)!

每一个方法深挖都会有很对子方法,在学习这些方法时,先搞清楚大方向,然后慢慢深入。这些方法的日常使用可能仅仅只配置一次,后续再也不会去改动了。大多数不需要配置,因为这里类似序列化,而序列化有框架自带的序列化工具,可能会忽略这里的配置。在学习配置的时候,很多配置其实都是框架预留的钩子或者为了兼容老的项目而设置的。简单来说,就是一个拦截器,拦截器能做的,他都能做。无论你的方法写在控制层还是服务层,都会生效。解析的结果类型和目标类型不一致时,才会触发此方法。的返回值是影响方法的的返回的,可以做到服务降级。

2025-10-22 14:00:03 979

原创 【开发者必备】Spring Boot 2.7.x:WebMvcConfigurer配置手册来了(一)!

在 Spring Boot 应用的开发中,我们常常会遇到这样的场景:需要定制化 Web 行为,却不想完全重写 Spring MVC 的默认配置。无论是处理跨域请求、添加统一拦截逻辑,还是配置静态资源映射,这些看似简单的需求背后,都离不开一个强大的配置接口——分享的内容仅仅是简单额入门,更详细的配置需要深入到每一个点,有兴趣的可以去深挖!正常来讲我们是不需要配置任何东西的,但是为了扩展或者兼容一些老的项目,需要去配置。如上图,不开启的内容协商,这里的参数会是正常的参数被接收还是遗弃,但是肯定不会报错。

2025-10-22 09:27:14 1014

原创 Komari:一款专为开发者打造的轻量级服务“看守神器”

Komari是一款轻量级的自托管服务器监控工具,旨在提供简单、高效的服务器性能监控解决方案。它支持通过 Web 界面查看服务器状态,并通过轻量级 Agent 收集数据。特性轻量高效:低资源占用,适合各种规模的服务器。自托管:完全掌控数据隐私,部署简单。Web 界面:直观的监控仪表盘,易于使用。GitHub地址:https://github.com/komari-monitor/komari文档地址:https://komari-document.pages.dev/

2025-10-21 10:13:22 412

原创 Mybatis-Plus的竞争对手来了,试试 MyBatis-Flex

是一个基于MyBatis的增强框架,它保留了MyBatis的所有优点,同时引入了更多现代化特性,旨在提供更优雅、更高效的开发体验。与传统的MyBatis增强工具不同,从头开始设计,专注于提供轻量级、高性能且功能丰富的ORM解决方案。小编从该项目刚开源不久就关注到了,当时的star不足1000。后续就关注的少了,最近发现其star数已经2.4k了。GitHub地址:https://github.com/mybatis-flex/mybatis-flex。

2025-10-20 15:03:50 1057

原创 TeamViewer、向日葵平替?这几款免费远程控制软件,真香!

号称时尚最安全的远程桌面。这是一款近年来在中国市场非常火爆的远程控制软件,因其对国内网络环境做了深度优化,在速度和延迟方面表现优异,被许多人视为。

2025-10-20 09:37:09 1570

原创 “String到Date转换失败”:深挖@RequestBody的日期坑

注解,它的主要作用是将 HTTP 请求体(Body)中的数据,按照特定的格式(如 JSON、XML)绑定到控制器方法的参数上。整个解析过程可以看作一条清晰的流水线,涉及了从 HTTP 请求到 Java 对象转化的每一步。项目框架是我搭建的,当时已经处理了关于日期参数传递的解析问题,还是出现问题有点不可思议。从之前的源码来看,消息转化器是按照顺序解析的,我们需要将消自定的。只需要在日期类型的字段上添加上面的注解,即可解决。而从遇到的问题看,这里的配置并没有走到。的版本需要根据项目的版本引入。

2025-10-17 09:58:09 726

原创 继老乡鸡菜谱之后,真正的AI菜谱来了,告别今天吃什么的烦恼...

一个基于 AI 的智能菜谱生成平台,支持中华八大菜系 + 国际料理,提供营养分析、酒水推荐、菜谱效果图生成等全方位烹饪指导。GitHub地址:https://github.com/liu-ziting/what-to-eat官网地址:https://eat.lz-t.top/

2025-10-13 15:44:21 308

原创 除了 ${},Thymeleaf 的这些用法让你直呼内行

—可以在浏览器中直接静态打开显示原型,也能通过注入动态数据作为模板正常运行,这极大地加强了前后端协作的效率。远不止是一个简单的模板引擎,它更是一套致力于提升开发体验的优雅解决方案。提供了一系列内置对象,可以直接在模板中使用,主要用于访问 Web 上下文中的各种信息。的每一个设计都直指 Web 开发的痛点。尤其内置的工具类以及对象,可以方便的操作数据。的方式,直接放在表达式里面,无需单引号。指定)的上下文中进行选择,简化了对同一对象多个属性的引用。用于包含模板片段,是实现页面布局和复用的关键。

2025-10-13 09:29:24 416

原创 SpringBoot集成:5分钟实现HTML转PDF功能

经过测量:PDF长度794px,两边留白56px,所以页面长度:794-56-56 = 682px。类似的框架处理,但是很多时候,需要服务端自己渲染数据然后,上传或者邮件发送。现在的问题是,图片需要调整一下,调整到左右留白差不多,这个是难点。可能更加方便,本身就支持中文,而其他两个则需要单独配置才能支持中文。无论如何,解决问题的思路是一致的。的框架有很多,小编也试了好几种,将觉得好用的分享给大家。又是否因为中文乱码而心烦意乱?直接错乱了,只能一点点的调试,才能完成。,所以这里就不在演示,两个同宗同源。

2025-10-11 16:29:28 378

原创 分布式日志排查太头疼?TLog 让你一眼看穿请求链路!

TLog是一个轻量级的分布式日志标记追踪框架,它并不重复造轮子去记录日志,而是专注于一件事:自动为你的每一次请求生成一个唯一的追踪ID(TraceId),并让这个ID在整个调用链路中无缝传递。支持log4jlog4j2logback三大日志框架,支持dubbodubbox三大RPC框架。简单来说,TLog自动打标:在请求入口处(如HTTP请求、定时任务、消息队列消费者),TLog会自动生成一个全局唯一的TraceId。无缝传递:无论你的服务之间通过何种方式调用(如FeignDubbo。

2025-10-11 14:13:47 630

原创 GitHub 标星 370k!免费编程资源大合集,从此自学不花一分钱

是一个由全球开发者社区共同维护的巨型资源库,专门收集和分享免费的编程相关教育资源。它的核心使命是无论其经济状况如何,都让编程知识变得对所有人开放和可及。资源涉及操作系统、python、Java、AI、运维等多个领域。免费电子书: 涵盖几乎所有编程语言、框架、理论和领域的经典和现代书籍。在线课程: 链接到像CourseraedXUdacity等平台的免费课程。交互式编程挑战: 如LeetCode免费题集等。播客和视频: 编程相关的播客节目和技术大会演讲视频。问题集与竞赛编程。

2025-10-09 13:41:01 496

原创 SpringBoot多模板引擎整合难题?一篇搞定JSP、Freemarker与Thymeleaf!

但是,总有一些老项目经历多轮迭代,人员更替,不同的开发都只是用自己熟悉的模版引擎,导致一个项目中包含了多种模板引擎。由于其他的视图解析器默认是最级别,所以这里的设置只要比Integr.MAX小即可。源码可以看到,仅仅做了遍历操作,并没有个给句特殊的规则去取。应用开发中,模板引擎是实现前后端分离和视图渲染的重要工具。所以影响视图解析器的就是候选视图的顺序。会对所有的视图排序,所以我们只需要指定。变成了第一个,最优的视图自然也选择了。是正常显示了,但是其他两个又不好了。的配置会影响其他的模板引擎,所以。

2025-09-29 14:23:05 944

原创 弃用html2canvas!震惊,新一代截图神器snapdom要快800倍

snapDOM是一款快速且精准的DOM转图像捕获工具,专为 Zumly(一个基于缩放的视图过渡框架)打造。它能将任何HTML元素捕获为可缩放的SVG图像,同时保留样式、字体、背景图像、伪元素,甚至影子DOM。它还支持导出为光栅图像格式和画布。官方也是对比了和的性能,分别调用5次取平均值,开发者可以随时测试。因为受网络、电脑性能的影响,测试的结果差异较大,小编去了两者差异较小的一次结果,竟是的800倍。总之,就是快!GitHub地址:https://github.com/zumerlab/snapdom。

2025-09-29 09:32:53 1334

原创 Xget:又一下载神器诞生!开源免费无广告,速度拉满!

Xget是一个由开发者 xixu-me创建的免费、开源的下载工具。它基于强大的后端下载引擎 Aria2构建,并提供了简洁易用的图形用户界面(GUI),使得即使不熟悉命令行操作的用户,也能轻松驾驭Aria2的高速下载能力。作者的初衷是为了加速在中国大陆境内访问不违反相关法律法规的平台上的开源资源,从而为广大开发者提供一个稳定、合法的加速体验。🌍 消除地理限制:帮助中国大陆开发者快速访问海外开源资源⚖️ 合规合法:严格遵守相关法律法规,仅加速合法的公开资源🚀 提升效率。

2025-09-26 09:30:00 653

原创 老乡鸡把菜谱在GitHub开源了,还说要给程序员发会员卡

厨师遇上程序员作者声明和老乡鸡的关系只有消费者和商家的关系,其中的菜谱来源于老乡鸡官方公开的《老乡鸡菜品溯源报告》,并编辑整理。看看恐怖的star趋势:作者还贴心的提供了便捷访问网址:https://cooklikehoc.soilzhu.su/就像一本菜谱一样呈现给大家。菜谱GitHub地址:https://github.com/Gar-b-age/CookLikeHOC。

2025-09-25 13:16:03 599

原创 总在发OPTIONS请求?这次终于搞懂CORS预检了

配置@Bean之前介绍的三种,预请求基本不会有问题,就算有问题也不好解决。自定义的跨域拦截器更加灵活。如果里面的尤其的业务逻辑,如果出现异常,就是导致预请求失败。这时我们需要特殊处理。return;表示只要是与请求,直接响应2xx,预请求就会通过。204表示响应成功,但是没有任何内容。

2025-09-25 11:00:24 1270

原创 安利一款 Redis 神器:Tiny RDM!颜值与实力并存

Tiny RDM是一个开源、跨平台的Redis桌面客户端,专为现代开发者设计。它的名字中的“Tiny”体现了其追求轻量化和快速响应的理念,而“RDM”则代表了。开源免费:基于Apache-2.0协议,完全免费,社区驱动。跨平台支持:提供WindowsmacOS和Linux版本,覆盖所有主流操作系统。现代化UI:拥有清新、直观且对用户友好的界面设计。轻量高效:安装包小,资源占用低,启动和运行速度非常快。主要还支持中文,对于初学者相当友好。GitHub。

2025-09-23 15:11:26 1041

原创 如何基于环境动态加载Bean?Spring ImportSelector一招搞定

是 Spring 框架中一个非常强大的接口,位于包下。它的核心作用是在运行时动态地选择一组配置类(即类)或普通组件的全限定类名,并让 Spring 容器将它们导入并注册为 Bean 定义。写过插件或者公用代码库的朋友都可能考虑过这样的问题。定义好的公用组件,肯定是独立的,可能会被引入到不同的模块项目中,其他项目默认不一定能扫描到自己的容器中。我们通常通过@Import手动导入或者配置到中,以达到被加载的目的。而今天要说的和Import。

2025-09-23 13:51:07 1113

原创 Archery:开源、一站式的数据库 SQL 审核与运维平台

Archery由国内优秀的开源团队开发和维护,它并非某个单一功能的工具,而是一个统一的数据库管理门户。其核心设计理念是通过一个 Web 平台,将分散的数据库管理操作集中化、流程化和自动化。主要的功能包括了强大的SQL审核与执行、卓越的SQL查询与优化、多数据库类型的支持以及全面的运维管理功能,如实例管理、账号权限、性能监控等。

2025-09-19 09:20:22 848

原创 从西贝预制菜到Java依赖:我们该如何吃透预制代码?

优秀的Java开发者应该像资深架构师一样,既懂得利用Spring生态的强大能力,又具备辨别依赖质量的能力。正如西贝中央厨房的标准化生产,Maven依赖确保了功能的一致性和可靠性,却可能隐藏着"技术债务"的风险。出来混,迟早要还的。而在Java开发领域,类似的剧情每天都在上演——我们热烈地拥抱Maven Central中的预制依赖,却在某个深夜被突如其来的。来自不同的上级依赖,版本不一致,可能导致依赖传递失效,导致项目异常。的版本,如果引入其他第三方依赖可能会导致依赖的冲突或者不可用的情况。

2025-09-18 13:47:51 844

原创 一键开启!Spring Boot 的这些「魔法开关」@Enable,你用对了吗?

通过声明式编程和自动装配机制,它们将复杂的技术实现细节完美地隐藏在一个个简洁的注解之后,让开发者能够专注于业务逻辑本身,从而真正实现了Spring Boot“快速开发”和“轻松集成”的承诺。理解和掌握这些“开关”背后的设计哲学,有助于我们更好地使用Spring Boot,乃至设计和实现自己的 Starter 与自动配置模块。Spring Boot的核心设计理念是“约定优于配置”,旨在减少开发者在XML和样板代码上的负担,让开发者能够快速构建生产级的应用。的位置不在启动类的扫描范围内,所以该类便不会加载。

2025-09-18 09:39:57 593

原创 接口调用总失败?试试Spring官方重试框架Spring-Retry

的核心思想是 AOP(面向切面编程)。它通过代理(Proxy)机制,在目标方法的外部包裹一层重试逻辑。当你调用一个被@Retryable注解的方法时,实际上是在调用一个由Spring生成的代理对象,这个代理对象负责在方法执行失败时,根据你配置的策略进行重试。

2025-09-16 13:13:36 745

空空如也

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

TA关注的人

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