AbstractRoutingDataSource 是 Spring 框架中的一个抽象类,它位于 org.springframework.jdbc.datasource.lookup 包下,主要用于实现动态数据源的切换。以下将从其作用、原理、使用步骤和示例代码等方面进行详细介绍。 介绍 作用 在一些复杂的业务场景中,可 […]
AbstractRoutingDataSource 是 Spring 框架中的一个抽象类,它位于 org.springframework.jdbc.datasource.lookup 包下,主要用于实现动态数据源的切换。以下将从其作用、原理、使用步骤和示例代码等方面进行详细介绍。 介绍 作用 在一些复杂的业务场景中,可 […]
HandlerMethodArgumentResolver 是 Spring 框架中的一个重要接口,主要用于处理控制器方法参数的解析。在 Spring MVC 中,当一个请求到达控制器方法时,Spring 需要将请求中的数据(如请求参数、请求头、请求体等)转换为控制器方法所需要的参数类型,HandlerMethodAr […]
在微服务架构盛行的当下,Kubernetes(K8s)凭借其强大的容器编排能力,成为了部署和管理应用的首选平台。而 Sentinel Dashboard 作为阿里巴巴开源的流量控制、熔断降级的可视化监控平台,为微服务的稳定运行提供了有力保障。Consul 服务网格则进一步增强了服务间的通信管理和安全性。然而,在将 Se […]
1. 环境准备 开发环境:确保已经安装了Java开发环境(JDK 8及以上)、Maven和Spring Boot CLI。 AI服务:注册OpenAI账号,获取API密钥,用于调用AI服务生成图片。 FFmpeg:安装FFmpeg工具,用于将生成的图片合成为视频。 2. 创建Spring Boot项目 使用Spring […]
MDC(Mapped Diagnostic Context,映射诊断上下文)是一种在日志记录中用于传递和管理上下文信息的工具,在Java的日志框架中广泛应用,如Log4j、Logback等。以下是关于MDC的详细介绍: 基本概念 MDC是一个与当前执行线程绑定的上下文对象,它允许开发者在应用程序的不同部分(例如不同的方 […]
动态线程池DynamicTp是一个基于配置中心实现的轻量级动态线程池监控管理工具,可对 Java 线程池进行动态管理和监控。 特性 代码零侵入:所有配置放在配置中心,服务启动时拉取配置生成线程池对象放入 Spring 容器,使用时从容器获取,不影响业务代码。 通知告警:提供配置变更、活性、容量阈值、拒绝触发、任务执行或 […]
在 MySQL 数据库的日常运维过程中,二进制文件的管理是一个重要环节。合理清理 MySQL 二进制文件不仅能够优化数据库性能,还能有效节省磁盘空间。今天,我们就来深入探讨一下 MySQL 二进制文件清理的相关知识。 一、MySQL 二进制文件是什么? MySQL 二进制文件主要包括二进制日志(binary log)和 […]
在 Spring Boot 应用中实现优雅关闭可以确保应用在停止时能够妥善处理正在进行的任务、释放资源,避免数据丢失和系统异常。以下是几种实现 Spring Boot 应用优雅关闭的方法: 1. 使用 Spring Boot Actuator Spring Boot Actuator 提供了一个 /shutdown 端 […]
原因 SpringCloud Gateway无法找到TandeMacBook-Pro.local对应的IP地址, DNS解析失败.导致启动耗时. 解决方案 查看本机hostname,命令如下: root@TandeMacBook-Pro ~ % hostname TandeMacBook-Pro.local 修改hos […]
短链生成的几种方法 业界实现短链的方式大概是有两种。 1. Hash算法 由长url通过 hash 算法,生成短的url,如果hash冲突,需要解决解决hash冲突。那么这个哈希函数该怎么取呢,相信肯定有很多人说用 MD5,SHA 等算法,其实这样做有点杀鸡用牛刀了,而且既然是加密就意味着性能上会有损失,我们其实不关心 […]
曾经沧海难为水,除却巫山不是云。