Tagged articles
5000 articles
Page 7 of 50
Java Tech Enthusiast
Java Tech Enthusiast
Jan 3, 2026 · Backend Development

How to Propagate TraceId with Spring MDC Across HTTP, MQ, Thread Pools, and Jobs

This guide explains how to use Spring's built‑in Mapped Diagnostic Context (MDC) to generate a traceId for each request, configure Logback to include it in logs, and propagate the traceId through HTTP filters, RabbitMQ messages, thread‑pool tasks, and XXL‑Job scheduled jobs, complete with code examples and configuration snippets.

JavaLoggingMDC
0 likes · 11 min read
How to Propagate TraceId with Spring MDC Across HTTP, MQ, Thread Pools, and Jobs
Java Captain
Java Captain
Jan 3, 2026 · Backend Development

Integrate Apache Tika with Spring Boot for Powerful Document Parsing

This guide shows how to integrate Apache Tika into a Spring Boot application by adding Maven dependencies, configuring a tika-config.xml file, creating a @Configuration class that provides a Tika bean, and using the bean to detect, translate, and parse various document formats.

Apache TikaBackend DevelopmentDocument Parsing
0 likes · 5 min read
Integrate Apache Tika with Spring Boot for Powerful Document Parsing
SpringMeng
SpringMeng
Jan 3, 2026 · Backend Development

Elegant Exception Handling in Spring: Unified @ControllerAdvice, Assertions, and Enum‑Based Errors

The article demonstrates how to replace scattered try‑catch blocks with a clean, unified exception handling strategy in Spring, using @ControllerAdvice, custom BaseException, enum‑driven error codes, and Assert utilities, while also standardizing API responses and handling common MVC errors such as 404.

BackendEnumException Handling
0 likes · 22 min read
Elegant Exception Handling in Spring: Unified @ControllerAdvice, Assertions, and Enum‑Based Errors
Architect
Architect
Jan 2, 2026 · Backend Development

How DDD Transforms Spring Cloud Alibaba Microservices: A Practical Guide

This article explains the fundamentals of Domain‑Driven Design, its core principles and two design phases, then shows how to apply DDD within a Spring Cloud Alibaba e‑commerce microservice system, providing a detailed layered architecture, file‑structure example, and recommendations for implementation.

DDDDomain-Driven DesignJava
0 likes · 11 min read
How DDD Transforms Spring Cloud Alibaba Microservices: A Practical Guide
Su San Talks Tech
Su San Talks Tech
Jan 2, 2026 · Backend Development

Boost SpringBoot API Performance: 12 Proven Optimization Techniques

This article presents a practical guide for SpringBoot projects, detailing twelve concrete strategies—including batch processing, asynchronous execution, caching, pagination, and transaction handling—to dramatically reduce API latency and improve overall backend efficiency.

API performanceCachingJava
0 likes · 11 min read
Boost SpringBoot API Performance: 12 Proven Optimization Techniques
java1234
java1234
Jan 1, 2026 · Backend Development

Spring Task Scheduling in 3 Lines: Automate Jobs and Eliminate Repetitive Code

This guide explains how Spring Task turns Java applications into self‑managed schedulers, showing three quick steps to add the dependency, enable @EnableScheduling, and write @Scheduled methods, then dives into cron syntax, common use cases, pitfalls, performance tuning, and future enhancements.

Backend DevelopmentCron ExpressionJava
0 likes · 8 min read
Spring Task Scheduling in 3 Lines: Automate Jobs and Eliminate Repetitive Code
Top Architect
Top Architect
Jan 1, 2026 · Backend Development

Spring Boot 4.0 & Spring Framework 7: Deep Dive into New Features and Migration Guide

Spring Boot 4.0 and Spring Framework 7 introduce a comprehensive overhaul—including Jakarta EE 11, JDK 25, JSpecify null‑safety, Project Leyden AOT, declarative HTTP clients, Jackson 3, native API versioning, built‑in resilience, OpenTelemetry, and a dual‑track Spring AI roadmap—providing developers with a modern, cloud‑native Java stack.

AIBackendJava
0 likes · 9 min read
Spring Boot 4.0 & Spring Framework 7: Deep Dive into New Features and Migration Guide
Architect's Guide
Architect's Guide
Jan 1, 2026 · Backend Development

How to Efficiently Import and Export Millions of Records with POI and EasyExcel

This article explains how to handle massive Excel import/export tasks in Java by comparing POI workbook implementations, selecting the appropriate class based on data size, and using EasyExcel with batch processing, JDBC transactions, and pagination to achieve fast, low‑memory operations for hundreds of millions of rows.

Data ExportJavaPOI
0 likes · 21 min read
How to Efficiently Import and Export Millions of Records with POI and EasyExcel
Architect
Architect
Dec 31, 2025 · Artificial Intelligence

How Spring AI Implements the Model Context Protocol: A Deep Architecture Walkthrough

This article provides a detailed, source‑code‑level analysis of Spring AI’s Model Context Protocol (MCP) implementation, covering its layered architecture, core client‑server interaction steps, key components, runtime debugging with SSE, and practical code examples for building and testing MCP services in Java.

JavaModel Context ProtocolSpring AI
0 likes · 23 min read
How Spring AI Implements the Model Context Protocol: A Deep Architecture Walkthrough
DaTaobao Tech
DaTaobao Tech
Dec 31, 2025 · Backend Development

How AI Transformed a Taobao Service‑Package System with Domain‑Driven Design

This article examines how a rapidly growing Taobao flash‑sale service‑package system suffered from high development costs, duplicated code, and tight coupling, and shows how AI‑assisted domain‑driven design was applied to refactor the architecture, automate code generation, and dramatically improve efficiency, maintainability, and extensibility.

AIBackend RefactoringDomain-Driven Design
0 likes · 13 min read
How AI Transformed a Taobao Service‑Package System with Domain‑Driven Design
Java Architect Handbook
Java Architect Handbook
Dec 31, 2025 · Backend Development

Mastering API Rate Limiting with Spring Interceptor and Redis

This article walks through building a Spring MVC interceptor that leverages Redis to enforce per‑IP request limits, explains configurable parameters, shows how to apply protection selectively via mapping rules or custom annotations, and discusses practical pitfalls such as sliding‑window logic, path‑parameter handling, and real‑IP detection.

API SecurityBackendInterceptor
0 likes · 20 min read
Mastering API Rate Limiting with Spring Interceptor and Redis
Tech Freedom Circle
Tech Freedom Circle
Dec 30, 2025 · Backend Development

How Java Virtual Threads Supercharge Spring Boot: 3× QPS Boost and 67% Memory Savings

This article explains how Java's new virtual threads (Project Loom) can transform Spring Boot applications, delivering up to three‑fold QPS improvements and up to 67% lower memory usage, by replacing heavyweight platform threads with lightweight coroutine‑style execution, and provides detailed comparisons, benchmarks, code samples, and migration guidance.

JavaPerformanceProject Loom
0 likes · 51 min read
How Java Virtual Threads Supercharge Spring Boot: 3× QPS Boost and 67% Memory Savings
Xiao Liu Lab
Xiao Liu Lab
Dec 30, 2025 · Information Security

Why Our New SSL Certificate Caused Handshake Errors and How We Fixed It

After updating a core API's SSL certificate, a partner reported repeated SSLHandshakeException errors, mistakenly labeling the cert as a development version; thorough verification revealed the issue stemmed from an outdated Java trust store lacking the new Sectigo root, leading to a set of concrete remediation steps and best‑practice lessons.

APICertificateJava
0 likes · 15 min read
Why Our New SSL Certificate Caused Handshake Errors and How We Fixed It
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Dec 30, 2025 · Backend Development

Mastering javatuples: Create and Manipulate Tuples in Java

This guide explains why Java developers often need to return multiple values, introduces the javatuples library as a lightweight solution, and walks through adding the Maven dependency, using core tuple classes, creating tuples via factories or constructors, accessing and modifying elements, and converting tuples to collections or arrays.

Code ExamplesJavaMaven
0 likes · 9 min read
Mastering javatuples: Create and Manipulate Tuples in Java
Java Companion
Java Companion
Dec 29, 2025 · Backend Development

Avoid OOM: EasyExcel Best Practices for Exporting Millions of Rows (with Ready‑to‑Use Helper)

This article explains why exporting large Excel files with EasyExcel can cause OOM, CPU blockage, and slow responses, and demonstrates a pagination‑query plus batch‑write solution with reusable helper classes, performance benchmarks, dynamic page sizing, async export, multi‑sheet and template techniques, and a concise best‑practice checklist.

AsyncJavaPerformance
0 likes · 15 min read
Avoid OOM: EasyExcel Best Practices for Exporting Millions of Rows (with Ready‑to‑Use Helper)
Java Architecture Diary
Java Architecture Diary
Dec 29, 2025 · Information Security

Why Spring Authorization Server Merged into Spring Security 7.0 and How to Migrate

Spring Authorization Server has been integrated into Spring Security 7.0, ending its independent lifecycle; the article explains the three historical eras, the reasons for the merge, and provides concrete dependency and configuration changes—including Lambda DSL updates—to help developers migrate from SpringBoot3 to SpringBoot4 with minimal effort.

Authorization ServerJavaMigration
0 likes · 11 min read
Why Spring Authorization Server Merged into Spring Security 7.0 and How to Migrate
Woodpecker Software Testing
Woodpecker Software Testing
Dec 28, 2025 · Backend Development

Deep Dive into JUnit: Core Concepts, Components, and Design Pattern Integration

This comprehensive tutorial explains JUnit's definition, core components, annotations, assertion methods, test suite creation, custom test rules, and how common design patterns such as Factory, Decorator, Strategy, and Template Method can be applied to write flexible, maintainable Java unit tests, plus installation steps and advanced usage tips.

Design PatternsJUnitJava
0 likes · 25 min read
Deep Dive into JUnit: Core Concepts, Components, and Design Pattern Integration
Woodpecker Software Testing
Woodpecker Software Testing
Dec 28, 2025 · Fundamentals

Mastering JUnit 5: The Modern Java Unit‑Testing Framework

JUnit 5 introduces a modular architecture with Platform, Jupiter, and Vintage, adds a fresh annotation model, dynamic and parameterized tests, tagging, exception assertions, and nested tests, and offers clear advantages over JUnit 4, as demonstrated through a complete Calculator example and Maven execution.

JUnit 5JavaMaven
0 likes · 8 min read
Mastering JUnit 5: The Modern Java Unit‑Testing Framework
Woodpecker Software Testing
Woodpecker Software Testing
Dec 28, 2025 · Backend Development

Adjusting GUI and API Test Cases with ChatGPT

This article explains how to handle leading and trailing spaces in user input by applying the .trim() method in both front‑end JavaScript validation functions and back‑end Java controllers, updates test data and cases, and verifies that all GUI and API tests pass successfully.

.trimAPIGUI
0 likes · 19 min read
Adjusting GUI and API Test Cases with ChatGPT
AI Architecture Hub
AI Architecture Hub
Dec 28, 2025 · Artificial Intelligence

Spring AI’s Model Context Protocol: Architecture, Code Walkthrough & Debugging

This article provides a comprehensive analysis of Spring AI’s Model Context Protocol (MCP), covering its layered client‑server architecture, core interaction sequences, key source‑code components, and step‑by‑step debugging of the SSE‑based initialization flow, enabling developers to integrate AI capabilities into Java applications with confidence.

AI IntegrationDebuggingJava
0 likes · 20 min read
Spring AI’s Model Context Protocol: Architecture, Code Walkthrough & Debugging
Top Architect
Top Architect
Dec 28, 2025 · Backend Development

Why FastExcel Is the Next‑Gen High‑Performance Excel Library for Java Developers

FastExcel, a Java library born from the discontinuation of EasyExcel, offers seamless migration, MIT‑licensed open‑source code, and dramatic performance gains for processing massive Excel files, while also introducing innovative features like selective row reading and Excel‑to‑PDF conversion, and it paves the way for the AI‑driven database tool Chat2DB.

Chat2DBExcelFastExcel
0 likes · 18 min read
Why FastExcel Is the Next‑Gen High‑Performance Excel Library for Java Developers
DevOps Coach
DevOps Coach
Dec 27, 2025 · Fundamentals

Why Does Integer == Fail for 128? Unveiling Java’s Autoboxing Cache

The article explains why comparing two Integer objects with `==` returns true for values within -128 to 127 but false for larger numbers, detailing Java’s integer cache, reference vs. value equality, and the correct use of `.equals()` to avoid subtle bugs.

Integer cacheJavaReference Equality
0 likes · 6 min read
Why Does Integer == Fail for 128? Unveiling Java’s Autoboxing Cache
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Dec 27, 2025 · Backend Development

Mastering Java Inner Classes: Organize, Encapsulate, and Simplify Your Code

The article explains how Java inner classes can be used to encapsulate related functionality, access private members of the outer class, implement interfaces for callbacks, and hide implementation details, providing clear code examples such as Car/Engine, Counter/Incrementer, Button listeners, and a Calculator with an Operation inner class.

CallbacksEncapsulationInner Classes
0 likes · 4 min read
Mastering Java Inner Classes: Organize, Encapsulate, and Simplify Your Code
Xiao Liu Lab
Xiao Liu Lab
Dec 26, 2025 · Operations

How to Achieve RabbitMQ High Availability with HAProxy: A Step‑by‑Step Guide

This tutorial explains why HAProxy is essential for RabbitMQ clusters, walks through installing HAProxy on Ubuntu, configuring load‑balancing and health‑check parameters, integrating with Java applications, and validating automatic failover to ensure high availability and efficient resource utilization.

HAProxyJavaLinux
0 likes · 8 min read
How to Achieve RabbitMQ High Availability with HAProxy: A Step‑by‑Step Guide
Ray's Galactic Tech
Ray's Galactic Tech
Dec 26, 2025 · Backend Development

Dubbo vs Spring Cloud: Which Java Microservice Framework Fits Your Needs?

This article compares Dubbo and Spring Cloud across four core dimensions—purpose, communication protocol, service registry, and ecosystem breadth—then expands the analysis with deployment complexity, learning curve, community activity, cloud‑native integration, and future trends to guide framework selection for Java microservice architectures.

DubboJavacomparison
0 likes · 9 min read
Dubbo vs Spring Cloud: Which Java Microservice Framework Fits Your Needs?
Java One
Java One
Dec 26, 2025 · Fundamentals

How C/C++, Java, and Python Run: A Deep Dive into Compilation and Execution

This article compares the execution models of C/C++, Java, and Python, explaining how compiled machine code, bytecode with JVM, and interpreted bytecode with the Python virtual machine operate, and illustrates each process with example file structures and compilation steps.

C++Execution ModelJava
0 likes · 6 min read
How C/C++, Java, and Python Run: A Deep Dive into Compilation and Execution
Alibaba Cloud Developer
Alibaba Cloud Developer
Dec 26, 2025 · Artificial Intelligence

How AutoContextMemory Cuts LLM Costs by 70% in Long Conversations

This article explains the challenges of token explosion in long‑running AI agent dialogues and introduces AutoContextMemory, a Java component that automatically compresses, offloads, and summarizes conversation history to dramatically reduce token usage, speed up responses, and preserve critical information.

AgentScopeContext ManagementJava
0 likes · 12 min read
How AutoContextMemory Cuts LLM Costs by 70% in Long Conversations
JavaGuide
JavaGuide
Dec 26, 2025 · Artificial Intelligence

MiniMax M2.1 Review: Can It Handle Real‑World Java and Multi‑Language Projects?

After testing MiniMax M2.1 on a full‑stack e‑commerce order‑management task, the author finds the model correctly implements DDD layers, transaction handling, custom exceptions, and even generates a polished cyber‑punk UI, while its Java‑to‑Go code respects each language’s concurrency model and scores over 88 on the VIBE benchmark.

AI codingDDDGo
0 likes · 8 min read
MiniMax M2.1 Review: Can It Handle Real‑World Java and Multi‑Language Projects?
Java Architecture Diary
Java Architecture Diary
Dec 26, 2025 · Information Security

Secure Your Spring Boot 4 Apps with One Annotation: MFA Made Easy

This article explains how Spring Boot 4.0’s @EnableMultiFactorAuthentication annotation simplifies the implementation of password‑plus‑one‑time‑token multi‑factor authentication, providing step‑by‑step code examples, custom token services, endpoint‑level MFA configuration, and production‑grade considerations.

JavaMFAMulti-Factor Authentication
0 likes · 11 min read
Secure Your Spring Boot 4 Apps with One Annotation: MFA Made Easy
Woodpecker Software Testing
Woodpecker Software Testing
Dec 25, 2025 · Backend Development

Using ChatGPT to Refine Java Unit Tests – Episode 23

This article walks through adjusting Java unit tests with ChatGPT, measuring coverage using JaCoCo, rewriting test code for User and PasswordRecovery classes, adding Mockito and PowerMock mocks, and showing how the changes raise coverage from 73.7% to over 80% across the project.

ChatGPTJUnitJaCoCo
0 likes · 17 min read
Using ChatGPT to Refine Java Unit Tests – Episode 23
Ray's Galactic Tech
Ray's Galactic Tech
Dec 25, 2025 · Backend Development

Mastering Delayed Messaging: When to Use RabbitMQ, RocketMQ, or Redis

This guide explains why delayed messages are essential for distributed system stability, compares RabbitMQ's TTL+DLX and delayed‑message plugin, details RocketMQ's precise timing and delay‑level features, and offers custom Redis and time‑wheel solutions with practical Java code examples and deployment tips.

Delayed MessagingJavaMessage queue
0 likes · 8 min read
Mastering Delayed Messaging: When to Use RabbitMQ, RocketMQ, or Redis
Top Architect
Top Architect
Dec 25, 2025 · Backend Development

Auto‑Inject UserId and OrderId into Logs with Spring AOP and MDC

This guide shows how to eliminate manual logging of user and order identifiers in a Java e‑commerce system by declaring log placeholders, storing values in ThreadLocal, and using a custom @UserLog annotation with Spring AOP to automatically populate MDC variables for Log4j2.

AOPJavaLogging
0 likes · 9 min read
Auto‑Inject UserId and OrderId into Logs with Spring AOP and MDC
JavaGuide
JavaGuide
Dec 25, 2025 · Interview Experience

How I Secured Offers from Top Tech Companies in 80 Days

The author, a non‑elite undergraduate and a modest 211 master’s graduate, shares a step‑by‑step 80‑day crash‑course that turned zero Java experience into multiple offers from major tech firms, emphasizing fundamental understanding, AI‑assisted learning, and thoughtful project trade‑offs.

AI-assisted LearningAlgorithm PreparationDistributed Systems
0 likes · 8 min read
How I Secured Offers from Top Tech Companies in 80 Days
Java Companion
Java Companion
Dec 25, 2025 · Backend Development

Druid Crashed in Production? How to Optimize the Spring Boot Connection Pool

The article explains why Druid can fail in a live Spring Boot service and provides a comprehensive, step‑by‑step optimization guide covering core pool parameters, monitoring setup, security hardening, leak detection, dynamic tuning, and best‑practice pitfalls to achieve stable, high‑performance database connections.

Connection PoolDruidJava
0 likes · 12 min read
Druid Crashed in Production? How to Optimize the Spring Boot Connection Pool
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Dec 25, 2025 · Fundamentals

Overloads vs Overrides in Java: When and How They Differ

This article explains the distinction between method overloading and method overriding in Java, covering their definitions, how the compiler or runtime selects the appropriate method, differences in method signatures, return types, and timing, and provides clear code examples for each concept.

JavaMethod OverloadingMethod Overriding
0 likes · 5 min read
Overloads vs Overrides in Java: When and How They Differ
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Dec 24, 2025 · Fundamentals

Understanding Java’s final, finally, and finalize: Usage, Pitfalls, and Best Practices

This article explains the distinct purposes of Java's final keyword, finally block, and finalize method, shows how to use them with classes, methods, and variables, highlights scenarios where finally may not run, discusses finalize deprecation, and recommends modern resource‑management techniques like try‑with‑resources.

Exception HandlingJavafinal
0 likes · 5 min read
Understanding Java’s final, finally, and finalize: Usage, Pitfalls, and Best Practices
Architect's Tech Stack
Architect's Tech Stack
Dec 24, 2025 · Backend Development

10 Proven Techniques to Supercharge API Performance in Java Applications

This article presents a comprehensive, step‑by‑step guide to optimizing Java‑based API interfaces, covering batch processing, asynchronous execution, caching, pre‑processing, pooling, transaction handling, pagination, SQL tuning, lock granularity, and code restructuring, with practical code examples and diagrams.

API optimizationAsynchronousBatch processing
0 likes · 10 min read
10 Proven Techniques to Supercharge API Performance in Java Applications
Su San Talks Tech
Su San Talks Tech
Dec 24, 2025 · Backend Development

Fixing RabbitMQ Connection Leaks with Thread‑Pool Asynchrony

Facing frequent timeouts in the high‑traffic eLong red‑envelope API, we traced the root cause to a RabbitMQ SDK connection‑leak using Linux netstat, then resolved it by offloading the processing to a single‑threaded pool, eliminating blocking and avoiding the SDK bug.

ConnectionLeakJavaPerformance
0 likes · 7 min read
Fixing RabbitMQ Connection Leaks with Thread‑Pool Asynchrony
Java Architecture Diary
Java Architecture Diary
Dec 24, 2025 · Backend Development

Why Spring Boot 4 Breaks Your Tests and How to Fix It

Upgrading to Spring Boot 4 can cause missing @WebMvcTest, MockMvc, and other compilation errors because the framework modularizes its large autoconfigure JAR into many smaller starters, requiring updated dependencies and configuration changes to restore test execution and improve startup performance.

JavaMigrationSpring Boot
0 likes · 10 min read
Why Spring Boot 4 Breaks Your Tests and How to Fix It
Woodpecker Software Testing
Woodpecker Software Testing
Dec 23, 2025 · Information Security

ChatGPT‑Powered Code Review: Securing Front‑End and Back‑End Password Recovery

This article presents a comprehensive ChatGPT‑driven code review of a password‑recovery feature, analyzing twelve front‑end and back‑end files, highlighting structural strengths, security gaps such as CSRF and XSS, and offering concrete refactoring, validation, and resource‑management recommendations.

ChatGPTCode ReviewJSP
0 likes · 44 min read
ChatGPT‑Powered Code Review: Securing Front‑End and Back‑End Password Recovery
Su San Talks Tech
Su San Talks Tech
Dec 23, 2025 · Backend Development

How to Crush the One Billion Row Challenge: Java Performance Secrets Revealed

This article walks through the One Billion Row Challenge—parsing a 13 GB file of 1 billion temperature records—by examining the baseline Java solution, analyzing top contestants' results, and detailing a step‑by‑step series of low‑level optimizations (JVM choice, parallel I/O, custom parsing, bespoke hash tables, Unsafe and SWAR techniques) that shrink execution time from minutes to under two seconds.

BenchmarkJavaOne Billion Row Challenge
0 likes · 20 min read
How to Crush the One Billion Row Challenge: Java Performance Secrets Revealed
Architect Chen
Architect Chen
Dec 23, 2025 · Backend Development

How to Reduce Java GC Pauses from 200 ms to 20 ms: A Practical Tuning Guide

This guide explains how to systematically analyze and optimize Java garbage‑collection pauses—cutting typical 200 ms stalls down to around 20 ms—by enabling detailed logs, selecting the right collector, tuning heap and generation settings, minimizing allocation, handling large objects, and balancing GC threads with CPU resources.

JVMJavaLow latency
0 likes · 5 min read
How to Reduce Java GC Pauses from 200 ms to 20 ms: A Practical Tuning Guide
Xuanwu Backend Tech Stack
Xuanwu Backend Tech Stack
Dec 23, 2025 · Backend Development

Mastering Redis Distributed Locks: From SETNX to RedLock and WatchDog

This article walks through the evolution of Redis distributed locks—from basic SETNX mutual exclusion to atomic SET with expiration, Lua‑based safe unlocking, Redisson's WatchDog auto‑renewal, and the RedLock algorithm—highlighting pitfalls, best‑practice implementations, and interview‑style Q&A for robust production use.

JavaRedisRedisson
0 likes · 15 min read
Mastering Redis Distributed Locks: From SETNX to RedLock and WatchDog
Top Architect
Top Architect
Dec 22, 2025 · Backend Development

Graceful Shutdown of Java Applications: kill Commands, JVM Hooks, and Spring Boot Actuator

This article explains how to perform a graceful shutdown of Java services by using Linux kill signals, configuring JVM SignalHandler and Runtime shutdown hooks, releasing resources such as thread pools and sockets, and exposing a Spring Boot Actuator endpoint for controlled termination, complete with code examples and configuration details.

Graceful ShutdownJVMJava
0 likes · 16 min read
Graceful Shutdown of Java Applications: kill Commands, JVM Hooks, and Spring Boot Actuator
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Dec 22, 2025 · Fundamentals

Why Is StringBuilder Faster Than StringBuffer? Understanding Java’s Mutable vs Immutable Strings

This article explains the fundamental differences between Java's String, StringBuilder, and StringBuffer—covering immutability, thread‑safety, internal caching mechanisms, and performance characteristics—while providing concrete code examples that illustrate how each class behaves in single‑threaded and multi‑threaded scenarios.

JavaStringstringbuffer
0 likes · 6 min read
Why Is StringBuilder Faster Than StringBuffer? Understanding Java’s Mutable vs Immutable Strings
macrozheng
macrozheng
Dec 22, 2025 · Backend Development

Why Your Java ThreadPool Threads Aren’t Releasing and How Shutdown Fixes It

The article investigates a Java application that accumulated nearly a thousand waiting threads without high CPU or memory usage, identifies a custom FixedThreadPool as the cause, explains how thread pools become GC roots, and demonstrates that calling shutdown or shutdownNow properly releases both threads and the pool.

ConcurrencyExecutorServiceGarbageCollection
0 likes · 13 min read
Why Your Java ThreadPool Threads Aren’t Releasing and How Shutdown Fixes It
Architect
Architect
Dec 21, 2025 · Backend Development

Mastering Spring Event Listeners: From Coffee Shop Analogy to High‑Throughput Architecture

This article uses a coffee‑shop analogy to explain Spring event listeners, demonstrates how to define, publish, and handle events, presents three techniques for handling massive traffic, shares real‑world incidents and lessons, compares listeners with MQ, and offers performance‑tuning tips and best‑practice rules.

Best PracticesEvent-drivenJava
0 likes · 10 min read
Mastering Spring Event Listeners: From Coffee Shop Analogy to High‑Throughput Architecture
Top Architect
Top Architect
Dec 21, 2025 · Information Security

Securing API Calls with Hybrid Symmetric‑Asymmetric Encryption and HTTPS Principles

This article presents a comprehensive design for API request and response protection that combines symmetric and asymmetric encryption, HTTPS fundamentals, and WeChat Pay specific cryptographic mechanisms, detailing key exchange, data signing, parameter handling, implementation code, common pitfalls, and a security analysis.

API SecurityHTTPSHutool
0 likes · 14 min read
Securing API Calls with Hybrid Symmetric‑Asymmetric Encryption and HTTPS Principles
Java Companion
Java Companion
Dec 21, 2025 · Backend Development

Eliminate Messy Login Logic: Unified Multi‑Channel Authentication with Spring Boot Factory & Strategy Patterns

This article demonstrates how to replace tangled if‑else login code with a clean Spring Boot solution that combines the Factory and Strategy patterns, enabling easy addition of multiple authentication methods such as password, WeChat, SMS, and future providers while improving extensibility, readability, and testability.

AuthenticationBackendFactory Pattern
0 likes · 12 min read
Eliminate Messy Login Logic: Unified Multi‑Channel Authentication with Spring Boot Factory & Strategy Patterns
SpringMeng
SpringMeng
Dec 21, 2025 · Backend Development

A Java Packaging Tool That Enables Double‑Click Execution

The author reviews common Java desktop packaging methods—GraalVM, JLink, Exe4J, batch scripts, and plain JAR—detailing their advantages and drawbacks, then demonstrates a custom WinForm‑based packaging utility that bundles a Swing application and a trimmed JRE into a single executable for double‑click launch.

Exe4JJLinkJava
0 likes · 6 min read
A Java Packaging Tool That Enables Double‑Click Execution
Architect's Guide
Architect's Guide
Dec 21, 2025 · Backend Development

How Spring Solves Circular Dependencies: Inside the Three‑Level Cache

This article provides a detailed walkthrough of Spring's circular‑dependency resolution, explaining the three‑level cache mechanism, step‑by‑step bean creation flow, and the underlying source‑code logic, complete with diagrams and code examples for deep understanding.

AOPJavaThree-level Cache
0 likes · 12 min read
How Spring Solves Circular Dependencies: Inside the Three‑Level Cache
Ray's Galactic Tech
Ray's Galactic Tech
Dec 20, 2025 · Backend Development

Production-Ready Idempotency for RocketMQ Duplicate Consumption (Full Code)

To reliably handle RocketMQ's at-least-once delivery semantics, this guide explains why duplicate consumption is inevitable, outlines three defensive layers—Redis‑based idempotency, database unique constraints, and state‑machine checks—provides production‑grade Java code, and details ACK/retry strategies and monitoring practices for robust systems.

DatabaseDuplicate ConsumptionIdempotency
0 likes · 9 min read
Production-Ready Idempotency for RocketMQ Duplicate Consumption (Full Code)
IT Services Circle
IT Services Circle
Dec 20, 2025 · Backend Development

Lenovo Backend Interview Secrets: Deadlocks, DNS, TLS & Java ArrayList

The article examines Lenovo’s 2023 graduate hiring salaries across cities, roles, and education levels, then shares a recent backend interview experience, detailing questions on deadlocks, networking layers, DNS resolution, TLS handshakes, common data structures, and Java’s ArrayList implementation, offering practical insights and recommendations.

Backend DevelopmentData StructuresInterview
0 likes · 19 min read
Lenovo Backend Interview Secrets: Deadlocks, DNS, TLS & Java ArrayList
Top Architect
Top Architect
Dec 20, 2025 · Backend Development

Master Null Checks in Java: When to Use StringUtils, ObjectUtils, and CollectionUtils

This article explains how to replace repetitive null‑checks in Java with the appropriate utility classes—StringUtils for strings, ObjectUtils for objects, arrays, lists and maps, and CollectionUtils for collections—providing step‑by‑step guidance, code examples, and a discussion of each method's limitations.

BestPracticesCollectionUtilsJava
0 likes · 8 min read
Master Null Checks in Java: When to Use StringUtils, ObjectUtils, and CollectionUtils
Tech Freedom Circle
Tech Freedom Circle
Dec 20, 2025 · Backend Development

How SpringBoot Loads Classes: Deep Dive into ClassLoaders and Bean Creation

This article dissects the SpringBoot class‑loading mechanism, explaining how the JVM parent‑delegation model is selectively overridden with custom class loaders like LaunchedURLClassLoader and RestartClassLoader, and how these changes integrate with Spring's bean lifecycle, auto‑configuration, and practical troubleshooting techniques.

DevToolsJavaSpringBoot
0 likes · 37 min read
How SpringBoot Loads Classes: Deep Dive into ClassLoaders and Bean Creation
JavaGuide
JavaGuide
Dec 19, 2025 · Backend Development

IntelliJ IDEA 2025.3.1: Critical Fixes and the Rollback of Query Console

IntelliJ IDEA 2025.3.1 quickly follows the 2025.3 major release, fixing over 200 issues, reinstating the classic Query Console, addressing WSL‑related Java debugging problems, stabilizing Gradle/Maven sync for large multi‑module projects, improving Spring tooling, Java debugging, Kotlin‑MongoDB support, and correcting terminal and TypeScript bugs.

2025.3.1IntelliJ IDEAJava
0 likes · 6 min read
IntelliJ IDEA 2025.3.1: Critical Fixes and the Rollback of Query Console
Architect
Architect
Dec 18, 2025 · Backend Development

Why Graceful Shutdown Is Essential for Spring Event and How to Avoid Common Pitfalls

This article shares hard‑learned production experience on using Spring Event, explaining why services must shut down gracefully before publishing events, how startup timing can cause event loss, which business scenarios fit the publish‑subscribe model, and practical reliability techniques such as retries and idempotency.

EventJavaPubSub
0 likes · 11 min read
Why Graceful Shutdown Is Essential for Spring Event and How to Avoid Common Pitfalls
Code Ape Tech Column
Code Ape Tech Column
Dec 18, 2025 · Backend Development

How to Co‑exist Multiple DataSources in Spring Without Switching?

This guide explains the concept of multi‑DataSource coexistence, when it is appropriate, step‑by‑step configuration for MySQL and TDengine, transaction manager handling, custom annotations, mapper scanning, differences from dynamic routing, common pitfalls, and best‑practice usage in a Spring‑MyBatis backend.

JavaMulti-DataSourceMyBatis
0 likes · 13 min read
How to Co‑exist Multiple DataSources in Spring Without Switching?
Java Companion
Java Companion
Dec 18, 2025 · Backend Development

Building a High‑Performance Sensitive‑Word Filter with SpringBoot and DFA

This article explains why traditional string‑search and regex methods struggle with large keyword sets, introduces the deterministic finite automaton (DFA) approach using a Trie structure for linear‑time matching, provides full Java implementations, and discusses real‑world applications and advanced optimizations such as double‑array Tries, Aho‑Corasick, and sharding with Bloom filters.

DFAJavaSensitiveWordFilter
0 likes · 17 min read
Building a High‑Performance Sensitive‑Word Filter with SpringBoot and DFA
Xuanwu Backend Tech Stack
Xuanwu Backend Tech Stack
Dec 18, 2025 · Backend Development

Mastering Two-Phase Commit: Theory, XA & JTA in Java

This article explains why local transactions fail in micro‑service architectures, introduces the Two‑Phase Commit (2PC) protocol with its coordinator and participant roles, details each phase with examples, shows how XA and JTA implement 2PC in Java, and discusses its drawbacks and interview‑ready alternatives.

2PCJTAJava
0 likes · 14 min read
Mastering Two-Phase Commit: Theory, XA & JTA in Java
Xiao Liu Lab
Xiao Liu Lab
Dec 17, 2025 · Cloud Native

Deploy SpringBoot JAR and Legacy WAR with Docker + Nginx in 5 Minutes

This guide shows how to containerize Java SpringBoot JAR or traditional WAR projects with Docker and Nginx, providing a unified, reproducible deployment pipeline that eliminates environment conflicts, simplifies port management, and enables seamless development‑to‑production transitions.

DockerJavaSpringBoot
0 likes · 13 min read
Deploy SpringBoot JAR and Legacy WAR with Docker + Nginx in 5 Minutes
Architecture Digest
Architecture Digest
Dec 17, 2025 · Backend Development

Why MyBatis-Flex Beats MyBatis-Plus: Features, Benchmarks, and Quick Start

MyBatis-Flex is a lightweight, high-performance MyBatis enhancement offering flexible CRUD, advanced QueryWrapper, extensive database support, and benchmarked speeds up to ten times faster than MyBatis-Plus, with a step-by-step quick-start guide covering table creation, Maven setup, Spring Boot configuration, entity mapping, and usage examples.

Backend DevelopmentDatabaseJava
0 likes · 9 min read
Why MyBatis-Flex Beats MyBatis-Plus: Features, Benchmarks, and Quick Start
Su San Talks Tech
Su San Talks Tech
Dec 17, 2025 · Fundamentals

What’s New in IntelliJ IDEA 2025.3 Unified Edition? A Feature Deep‑Dive

IntelliJ IDEA 2025.3 merges Ultimate and Community editions into a single installer, unlocks many formerly premium features for free users, adds command completion, full Java 25 support, a new Islands theme, AI enhancements, expanded framework integrations, and a suite of productivity plugins for modern development workflows.

AICommand CompletionIDE
0 likes · 12 min read
What’s New in IntelliJ IDEA 2025.3 Unified Edition? A Feature Deep‑Dive
Top Architect
Top Architect
Dec 17, 2025 · Backend Development

Zero‑Downtime SpringBoot Updates: Share the Same Port Between Old and New Instances

This article explains how to update a SpringBoot application without stopping the service by letting the old and new processes share the same port, detailing the underlying Tomcat and ServletContainerInitializer mechanisms, providing a step‑by‑step implementation and a demo for seamless zero‑downtime deployments.

JavaPortSharingServlet
0 likes · 10 min read
Zero‑Downtime SpringBoot Updates: Share the Same Port Between Old and New Instances