自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java和ptyhon对比

​:初学者可先学Python建立编程思维,再深入Java理解工程化;职业方向若偏AI/数据分析选Python,若重系统架构或移动开发选Java。两者掌握其一后,另一门语言易触类旁通。

2025-07-21 22:34:08 304

原创 jdk25浅谈

JDK 25 作为 Java 的下一个长期支持版本(LTS),计划于 2025 年 9 月正式发布。该版本聚焦语言表达力提升、性能优化、并发模型革新及安全增强,是继 JDK 21 后的首个 LTS 版本。

2025-07-21 22:28:34 406

原创 Spring Cloud Gateway高危隐患

​。

2025-07-20 22:05:05 365

原创 maven构建Could not transfer artifact失败原因

Maven构建中失败的是:​。

2025-07-20 21:30:59 334

原创 pom.xml文件中的${}变量从哪里传值

在和。

2025-07-18 22:29:24 475

原创 mave手动下载某个依赖,到本地库

要在 Maven 中手动下载依赖到本地仓库(

2025-07-18 22:28:14 330

原创 git的cherry-pick

是 Git 中一个强大的命令,用于将指定的提交(commit)​​ 从其他分支复制到当前分支。与合并 () 不同,它只选择性引入特定提交的变更,而不是整条分支的历史。以下是核心要点:​精准复制提交​ 复制一个或多个提交的修改(文件改动),在当前分支生成内容相同但哈希值不同的新提交。​避免全分支合并​ 当需要引入其他分支的部分功能/修复,而非整个分支时使用(例如:只移植一个关键 Bug 的修复)。​操作步骤​ ​切换到目标分支​ ​执行 cherry-pick​

2025-07-17 23:00:40 399

原创 kong是什么

在 ​,当提到 ​​ 时,通常指 ​​ 公司推出的开源技术产品,尤其是核心产品 ​​(API网关)和 ​​(服务网格)。

2025-07-17 22:59:58 720

原创 使用 PowerMockito 模拟 new A() 行为

在 Java 测试中,当你想模拟 实例化的对象行为时,可以使用 PowerMockito。下面是一个完整的示例:Maven 依赖配置关键步骤解析 ​测试类配置​:​模拟构造函数​: ​设置方法返回值​: 实际效果说明当 中的 执行时:这样既不需要修改被测试类的代码,也能完全控制新创建对象的行为。对于简单场景,推荐优先重构代码使用依赖注入。但当处理遗留代码或第三方库时,PowerMock 提供的这种能力非常有用。

2025-07-15 19:24:14 485

原创 java MultipartFile初始化

在Java中,是Spring框架中用于处理文件上传的接口。​,而是通过Spring MVC的控制器方法参数接收上传的文件。如果需要在测试或模拟场景中创建其实例,可以使用Spring的类。

2025-07-15 19:22:51 379

原创 Docker中的Java杀手:容器化环境下的JVM内存巨坑与生存指南

​:容器不是虚拟机的替代品,而是JVM的新运行时环境。忽视这点必将付出惨痛代价!

2025-07-14 22:41:39 788

原创 Dubbo高阶难题:异步转同步调用链上全局透传参数的丢失问题

/ 恢复上下文});// 使用自定义线程池。

2025-07-14 22:33:53 929

原创 Dubbo跨越分布式事务的最终一致性陷阱

​​:作为资深Java开发者,你设计了一个Dubbo分布式电商系统:订单服务(A)调用库存服务(B)扣减库存,同时库存服务(B)需要回调订单服务(A)更新订单状态。你已正确配置了超时重试、服务降级,甚至使用了Seata AT模式,但依然遇到数据不一致。问题出在哪里?

2025-07-13 22:39:20 254

原创 由于找不到MSVCP110.dll,无法继续执行代码。重新安装程序可能会解决此问题

如同错误提示建议,卸载 “SKEstivalVersus.exe” 或相关程序,然后从其官网下载最新版本重新安装。这能修复程序自带的文件缺失问题。这是最可靠的解决方案,因为 “MSVCP110.dll” 属于 Visual C++ 2012。90% 的类似错误可通过安装官方包修复。如果这些步骤后问题依然存在,请提供更多细节(如系统版本或错误重现截图),我会进一步协助!如果上述无效,可能是系统文件损坏。Windows 内置工具能自动修复。

2025-07-13 22:28:14 338

原创 由于找不到 d3dx9_43.dll,无法继续执行代码。重新安装程序可能会解决此问题

根据您上传的图片显示,这是一个系统错误提示框,标题为“game.exe - 系统错误”,提示“由于找不到 d3dx9_43.dll,无法继续执行代码。重新安装程序可能会解决此问题。”这个错误通常发生在游戏或程序运行时缺少必要的 DirectX 组件文件(d3dx9_43.dll 是 Microsoft DirectX 9 的一部分)。

2025-07-12 21:53:20 445

原创 请求服务端获取broker的机房归属信息异常

该错误表明服务在尝试获取broker的 ​​ 时遇到异常。

2025-07-12 21:50:16 467

原创 mvn能只test单独一个文件吗

​ 找到你想要单独运行的测试类的完整类名(包括包路径)。就是运行单个测试类的最简单、最标准的方法。你还可以在该类名后添加。​ 只测试一个单独的文件(更精确地说,是一个单独的测试类)。参数的灵活性为运行特定的测试子集提供了强大的支持。插件(默认用于运行单元测试)提供的。和方法名来执行单个测试方法。使用 Maven 的。是的,Maven ​。

2025-07-11 23:10:06 374

原创 报错org.mockito.exceptions.misusing.UnnecessaryStubbingException: Unnecessary stubbings detected in t

​ 如果不是冗余的,则修正测试逻辑确保它能执行到需要该桩的代码路径。将桩的设置限定在需要的测试方法内部是避免此问题的最有效方法。模式(默认开启或通过特定运行器/规则激活)会检测这类冗余的桩,因为它们通常是代码错误或测试写得不够严谨的信号。​ 你定义了某个 Mock 对象的行为(打了桩),但在后续的测试执行路径中,​。是 Mockito 帮助你提高测试质量的一个信号。这个报错表示你的 Mockito 测试类中存在 ​。

2025-07-11 23:08:43 289

原创 idea如何打开extract surround

​操作​​快捷键 (Windows)​​​快捷键 (macOS)​​​使用场景​⌘ + ⌥ + T包裹代码块(if/try/循环等)⌘ + ⌥ + M将代码提取为新方法⌘ + ⌥ + V将表达式提取为变量⌘ + ⌥ + C将字面量提取为常量Ctrl + T⌘ + T打开重构菜单选择提取操作💡 ​提示​:如果快捷键冲突,可在SettingsKeymap中自定义快捷键(搜索 "Extract" 或 "Surround")。

2025-07-10 21:32:22 1429

原创 mvn能只test单独一个文件吗

​ 找到你想要单独运行的测试类的完整类名(包括包路径)。就是运行单个测试类的最简单、最标准的方法。你还可以在该类名后添加。​ 只测试一个单独的文件(更精确地说,是一个单独的测试类)。参数的灵活性为运行特定的测试子集提供了强大的支持。插件(默认用于运行单元测试)提供的。和方法名来执行单个测试方法。使用 Maven 的。是的,Maven ​。

2025-07-10 21:31:22 456

原创 如何处理mocking is already registered in the current thread

根据错误信息 ​,这是在 Jenkins 运行单元测试时出现的 Mockito 静态模拟冲突问题。

2025-07-10 21:30:33 365

原创 java void方法怎么单测断言

​ 进行行为验证,比传统的 JUnit 断言更具表达力。对于现代 Java 测试,推荐使用 ​。​ 提供的丰富断言(如。

2025-07-08 22:25:56 295

原创 在 Mockito 中,thenReturn(1,2)和thenReturn(1).thenReturn(2)有什么不同

对于简单返回值序列:更紧凑:更清晰体现序列关系对于混合行为(返回值+异常)​​:必须使用链式写法对于类型转换// 多参数形式允许类型转换 (int → long)// 链式形式可能需要显式类型结论:对于纯粹的返回值序列场景,​两者功能完全相同,可以根据代码风格和个人偏好自由选择。只有当需要混合不同行为(如返回值+异常)时,链式写法才是必需的选择。

2025-07-08 22:18:44 410

原创 阿里arthas(阿尔萨斯)简介

​阿里 ​。

2025-07-07 22:28:47 843

原创 软件项目中的静态缺陷是什么

软件项目中的​(Static Defects)是指在的情况下,通过分析源代码、配置文件或设计文档发现的代码质量问题或潜在风险。这类缺陷通常通过 ​​ 工具(如 SonarQube、ESLint、Checkstyle 等)或人工代码审查识别。

2025-07-07 11:13:18 316

原创 详细说一说allow-bean-definition-overriding

Bean@Bean// 覆盖Config1的Bean​默认行为​:启动失败,抛出。​开启覆盖后​:容器中最终注册的是。

2025-07-06 02:34:27 522

原创 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.Persiste

异常,通常表示 MyBatis 在执行 SQL 过程中遇到了不可预期的错误。

2025-07-06 02:32:53 836

原创 怎么处理[TOO_MANY_REQUESTS/12/disk usage exceeded flood-stage watermark

​关键建议:​​ 始终保留至少 ​20% 的磁盘空闲空间,避免ES触发自我保护。定期清理旧数据 比 被动处理磁盘满 更可靠!🚀。

2025-07-04 14:12:31 520

原创 怎么处理java.lang.OutOfMemoryError:Metaspace

要解决错误,需针对。

2025-07-04 09:52:29 811

原创 创建 TransactionStatus

​使用。

2025-07-03 22:35:22 443

原创 处理私有方法模拟的深度解析

方法适用场景优点缺点代码重构可修改的新项目设计更清晰,易于测试需要修改生产代码包级可见性可调整方法可见性保持简单实现减弱封装性反射紧急情况/遗留系统不修改生产代码测试脆弱PowerMock无法重构的旧代码功能强大测试慢,复杂。

2025-07-03 22:33:55 580

原创 mysql查看数据库

在 MySQL 中查看,使用。

2025-07-02 22:13:24 545 1

原创 深入Java类加载机制—为什么自定义类加载器可能引发Metaspace OOM?

创建] → [使用] → [隔离] → [卸载]理解这四阶段才能避免Metaspace成为系统稳定性的定时炸弹。​类加载器生命周期应短于其加载的类​​没有对象引用不等于没有内存占用​​显式卸载需要协同GC努力​"Java应用的永恒运行,不是靠巨大的内存堆砌,而是精密的生命管理。" —— 资深架构师的领悟。

2025-07-02 22:09:57 396

原创 揭秘Java多线程下的JIT编译陷阱:为什么在空循环中移除代码会引发并发故障?

try {if (LOG.isDebugEnabled()) { // JIT移除了整个块// 此时锁状态损坏!​关键教训同步块内避免冗余判断volatile写应放在共享变量修改后生产环境启用在高性能Java系统中,了解JIT的优化边界如同掌握核能技术——用之得当则动力澎湃,失控则灾难性崩溃。通过本文的工具和方法,希望你能建造出更稳定的并发系统。

2025-07-01 22:19:54 532

原创 系统架构设计师和系统分析师的区别

​​选系统架构设计师​​:适合技术深耕者,热爱解决复杂技术问题,追求成为技术领袖。典型画像:5年以上开发经验,擅长系统设计,目标CTO。​​选系统分析师​​:适合业务驱动型人才,擅长沟通与逻辑抽象,希望以技术赋能业务。典型画像:具备跨领域知识,目标产品总监或咨询顾问。

2025-07-01 22:13:24 282

原创 cron 表达式 0 10 0/2 * * ? 的含义

cron 表达式的含义是:​。

2025-06-29 20:52:57 413

原创 倒排索引是不是依赖于正向索引

​。两者在现代检索系统中是的关系,而非相互替代。

2025-06-28 15:39:52 1257

原创 为什么要设计access_token和refresh_token

这种分离设计完美地平衡了三个核心要素:​。它是现代认证授权体系的基石之一。

2025-06-27 20:06:02 527

原创 Java Agent线程安全

"在Java Agent的无侵入式监控领域,我们犹如行走在黑暗森林。每个看似无害的字节码注入操作,都可能引发蝴蝶效应般的灾难。当监控线程池满负荷时,工作线程被阻塞等待线程池释放资源,而线程池的任务又在等待工作线程释放资源。​:当你凝视Agent时,Agent也在凝视你 —— 监控系统自身应保持量子态的透明性。,不在于编写多少代码,而在于理解字节码、线程栈、内存屏障之间那些不可见的引力联系。记住:安全监控系统的最高境界,是让自己永远不被感知。看似无害的代码替换,实则暗藏杀机。

2025-06-26 20:43:43 592

原创 lua脚本的原子性

Lua脚本在Redis中的原子性由单线程模型和脚本整体执行机制保证,适用于需要强一致性的场景,但需注意性能影响和错误处理。

2025-06-25 20:05:10 464

空空如也

空空如也

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

TA关注的人

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