- Java教程
被问到JVM类加载机制中双亲委派模型是什么,三次被破坏指什么?
双亲委派模型并不是一个具有强制性约束的模型,而是Java设计者推荐给开发者们的类加载器实现方式。在Java的世界中大部分的类加载器都遵循这个模型,...
- Java教程
ZGC可伸缩低延迟垃圾收集器深度解析
随着Java应用的日益复杂和数据量的不断增长,垃圾收集(GC)的性能和效率变得尤为关键。ZGC(Z Garbage Collector)是Java 11中引入的一款可伸缩、低延迟的垃...
- Java教程
深入理解Java虚拟机:程序计数器与虚拟机栈详解
本节主要讲的是运行时数据区(程序计数器与虚拟机栈),也就是下图这部分,它是在类加载完成后的阶段:当我们通过前面的:类的加载-> 验证 -> 准备...
- Java教程
Spring Boot整合Camunda打造高效工作流程
Camunda允许在BPMN模型中定义异常捕获机制,以便在出现错误或异常时能够适当地响应。可以通过定义错误边界事件(Error Boundary Events)来捕获特定活动的异...
- Java教程
非Controller控制层参数校验要怎么做
本文介绍了在非Controller控制层参数校验的两种方法,不管是哪种获取方法只要能达到结果就行,不过建议使用后者,可以把后者封装成工具类,统一管理校...
- Java教程
探索分布式事务解决方案:八种方案解析
在电商秒杀活动中,为了防止超卖现象,需要确保同一时间只有一个请求能够对库存数量进行修改。这时,可以使用Redis作为分布式锁的后端存储,以确保...
- Java教程
Netty 编程看上去懵懵的...
本文只是介绍了 Java NIO 在 Netty 中的体现、Netty 对 Java NIO 的封装,让大家更方便的理解 Netty,并不涉及 Netty 的高效、强大的设计之处,下文将会对此进行介...
- Java教程
Spring Boot邮件发送教程:步步为营,轻松实现图片附件邮件!
我将逐步介绍添加必要的依赖、创建邮件服务类和控制器的步骤,并提供了具体的示例源代码。跟随这个简单而清晰的教程,您将能够轻松地集成邮件发送...
- Java教程
面试官:说说零拷贝的实现原理?
零拷贝(Zero-copy)技术是一种计算机操作系统中用于提高数据传输效率的优化策略。在传统的数据传输过程中,需要将数据从一个缓冲区拷贝到另一个缓冲...
- Java教程
探秘Spring Contract:如何保障您的API符合预期?
契约测试(Contract testing)是一种测试技术,它通过以隔离检查集成点上的每个应用的方式,确保应用发送或接收的消息符合调用双方共识,并允许随着时间...
- Java教程
为什么都说 HashMap 是线程不安全的?
做Java开发的人,应该都用过 HashMap 这种集合。今天就和大家来聊聊,为什么 HashMap 是线程不安全的。...
- Java教程
阿里二面:谈谈ThreadLocal的内存泄漏问题?
本文探讨了ThreadLocal的工作原理以及其内存泄漏问题及解决策略。ThreadLocal通过为每个线程提供独立的变量副本,实现多线程环境下的数据隔离。...
- Java教程
面试官:Kafka和ES选主有什么区别?
Kafka 是一个分布式流处理平台,由 LinkedIn 公司开发和维护,之后成为 Apache 软件基金会的一部分。它主要是为处理实时数据而设计的,是一个高吞吐量的分...
- Java教程
Java 8 内存管理原理解析及内存故障排查实践
本文介绍Java8虚拟机的内存区域划分、内存垃圾回收工作原理解析、虚拟机内存分配配置,以及各垃圾收集器优缺点及场景应用、实践内存故障场景排查诊...
- Java教程
详解基于SpringBoot的WebSocket应用开发
WebSocket是一种在单个TCP连接上进行全双工通信的协议,其最大的特点是服务器可以主动向客户端发送消息,而不需要客户端先发起请求。相较于传统的HTT...
- Java教程
想进阿里?先搞懂Spring Bean的循环依赖!
为了解决这些问题,Spring引入了三级缓存机制。三级缓存在二级缓存的基础上增加了一个缓存阶段,即earlySingletonObjects,用于存储已经创建但尚未完成初始...