Tagged articles

Java

5000 articles · Page 2 of 50
samdeepthink
samdeepthink
Aug 28, 2026 · Fundamentals

How Java’s LocalDate Embodies the Single Responsibility Principle

The article explains how JDK 17’s java.time.LocalDate follows the Single Responsibility Principle by separating date data from formatting, contrasts this design with the older mutable java.util.Date, and shows how to spot classes that take on too many responsibilities.

API DesignDateTimeFormatterImmutable Objects
0 likes · 6 min read
How Java’s LocalDate Embodies the Single Responsibility Principle
dbaplus Community
dbaplus Community
Aug 27, 2026 · Backend Development

How MQ Message Reordering Triggered a Major Business Outage

A late‑night logistics alert revealed that out‑of‑order RocketMQ events caused order and shipment statuses to diverge, prompting a root‑cause analysis that uncovered a gift‑giving feature’s simultaneous event publishing and led to two mitigation strategies: delayed sending and ordered messages.

BackendJavaRocketMQ
0 likes · 8 min read
How MQ Message Reordering Triggered a Major Business Outage
CodeSmart Hoops
CodeSmart Hoops
Aug 27, 2026 · Backend Development

Deep Dive into gRPC: Load Balancing, Service Discovery, and Pitfall Guide

This article provides a comprehensive analysis of gRPC, covering core concepts, HTTP/2 and Protobuf fundamentals, four call patterns, interceptors, error handling, load‑balancing strategies, service discovery mechanisms, circuit‑breaking and rate‑limiting, security layers, and a complete Spring Boot 3 + JDK 21 runnable example with a detailed best‑practice checklist.

Circuit BreakingHTTP/2Java
0 likes · 33 min read
Deep Dive into gRPC: Load Balancing, Service Discovery, and Pitfall Guide
Su San Talks Tech
Su San Talks Tech
Aug 27, 2026 · Artificial Intelligence

How Redis Becomes the Real‑Time Data Backbone for AI

Redis has evolved from a pure cache middleware into a full‑stack AI data infrastructure, offering vector search, native vector sets, semantic caching, and an AI Agent context engine, with sub‑millisecond latency, high throughput, and detailed performance benchmarks that illustrate its strengths and trade‑offs.

AIJavaRedis
0 likes · 15 min read
How Redis Becomes the Real‑Time Data Backbone for AI
Senior Tony
Senior Tony
Aug 26, 2026 · Industry Insights

What Is a Forward Deployed Engineer (FDE) and Why Big Tech Is Hiring Them

This article explains the Forward Deployed Engineer (FDE) role, tracing its origins from Palantir to its current critical function in deploying AI models into real enterprise systems, detailing the workflow, required skills, and why FDEs command high salaries in the AI deployment era.

AI DeploymentAgentCareer Transition
0 likes · 9 min read
What Is a Forward Deployed Engineer (FDE) and Why Big Tech Is Hiring Them
Architect Chen
Architect Chen
Aug 25, 2026 · Fundamentals

Java Thread States Explained: 6 States with Visual Diagrams

This article provides a comprehensive explanation of Java's six thread states—New, Runnable, Blocked, Waiting, Timed Waiting, and Terminated—with visual diagrams illustrating each state's transitions and typical triggers such as lock acquisition, wait/notify, and timeout mechanisms.

JavaJava InterviewThread Lifecycle
0 likes · 3 min read
Java Thread States Explained: 6 States with Visual Diagrams
IoT Full-Stack Technology
IoT Full-Stack Technology
Aug 25, 2026 · Fundamentals

Elegant Ways to Eliminate Null‑Related Bugs in Java

The article explains how null values cause NullPointerException, unpredictable behavior, and resource leaks in Java, and presents twelve practical techniques—including Optional, annotations, null‑safe APIs, custom helpers, exception handling, the Null Object pattern, third‑party libraries, documentation, code reviews, testing, static analysis, and IDE support—to prevent and resolve these issues.

JavaNull SafetyNullPointerException
0 likes · 5 min read
Elegant Ways to Eliminate Null‑Related Bugs in Java
Java Backend Technology
Java Backend Technology
Aug 25, 2026 · Backend Development

Are Java Virtual Threads Losing Their Momentum?

The article examines why the early hype around Java virtual threads has faded, detailing technical pitfalls such as pinning and ThreadLocal memory bloat, incomplete ecosystem support, and misuse in CPU‑bound workloads, while also presenting benchmark data that shows they still excel in I/O‑heavy scenarios.

JDKJavaPerformance
0 likes · 10 min read
Are Java Virtual Threads Losing Their Momentum?
Coder Trainee
Coder Trainee
Aug 24, 2026 · Backend Development

How a Silent Infinite Loop Drained Our Database Connection Pool

The article walks through a real incident where a scheduled batch job contained an infinite while‑true loop, causing all 500 HikariCP connections to be held, slowing the application dramatically; it details the investigation steps, root‑cause analysis, and both emergency and long‑term fixes, plus a checklist to avoid similar bugs.

HikariCPJavaSpring
0 likes · 7 min read
How a Silent Infinite Loop Drained Our Database Connection Pool
CTO Full-Stack Academy
CTO Full-Stack Academy
Aug 24, 2026 · Backend Development

Hot Swap vs Hot Deployment in Java: How They Work and When to Use Them

The article explains the background of long Java restart times, defines hot swap and hot deployment, details their implementation mechanisms, compares their granularity, speed, limitations, and impact, lists common tools, and highlights frequent misconceptions and pitfalls for developers.

Hot DeploymentHot SwapJRebel
0 likes · 9 min read
Hot Swap vs Hot Deployment in Java: How They Work and When to Use Them
Yumin Fish Harvest
Yumin Fish Harvest
Aug 23, 2026 · Backend Development

How to Deploy TSID for Distributed ID Generation: From Local Setup to Multi‑Cluster Kubernetes

This article walks through using the TSID library to generate 64‑bit numeric and 13‑character string IDs, shows a quick‑start Maven example, integrates the creator into Spring Boot as a singleton bean, explains node and nodeCount configuration, and details deployment strategies for fixed servers, a single Kubernetes cluster, and multiple clusters.

JavaKubernetesSpring Boot
0 likes · 16 min read
How to Deploy TSID for Distributed ID Generation: From Local Setup to Multi‑Cluster Kubernetes
LuTiao Programming
LuTiao Programming
Aug 22, 2026 · Backend Development

Why Spring Boot 4.1.1 Makes Controllers and JSON Unnecessary for Internal Microservice Calls

Spring Boot 4.1.1 now offers native gRPC support, letting Java microservices replace the usual REST controllers, DTOs, Feign clients and JSON payloads with a single .proto definition, generated code, and built‑in security, health, observability and testing features, while highlighting best practices and pitfalls.

JavaMicroservicesProtocol Buffers
0 likes · 12 min read
Why Spring Boot 4.1.1 Makes Controllers and JSON Unnecessary for Internal Microservice Calls
Three Knives
Three Knives
Aug 22, 2026 · Cloud Native

Eliminating Startup Decisions: How Feat Moves Runtime Choices to Compile Time for Faster Cold Starts

The article explains how the Feat framework reduces Java cold‑start latency by shifting configuration and environment decisions from runtime to compile time, using a three‑layer config model, externalized placeholders, and compile‑time code generation to eliminate on‑the‑fly processing.

Cloud NativeCompile-time ConfigurationFeat framework
0 likes · 7 min read
Eliminating Startup Decisions: How Feat Moves Runtime Choices to Compile Time for Faster Cold Starts
Architect's Guide
Architect's Guide
Aug 22, 2026 · Information Security

Comprehensive Guide: Implementing RBAC with Spring Security and JWT

This article walks through the fundamentals of Role‑Based Access Control (RBAC), explains the RBAC0‑RBAC3 model hierarchy, demonstrates how to configure Spring Security for in‑memory and database authentication, integrates JWT for stateless token handling, and shows how to enable JSON‑based login and BCrypt password encryption with concrete code examples.

JWTJavaRBAC
0 likes · 16 min read
Comprehensive Guide: Implementing RBAC with Spring Security and JWT
Dabaoshi
Dabaoshi
Aug 21, 2026 · Backend Development

Concurrency Series Finale: Virtual Threads and Structured Concurrency

The article explains why platform threads are costly, how JDK 21 virtual threads eliminate that cost, and provides practical guidance on creating, using, and debugging virtual threads, including pinning pitfalls, rules against pooling, structured concurrency, ScopedValue, and a detailed model‑selection comparison.

JDK 21JavaStructured Concurrency
0 likes · 34 min read
Concurrency Series Finale: Virtual Threads and Structured Concurrency
Java Architecture Diary
Java Architecture Diary
Aug 21, 2026 · Artificial Intelligence

LangChain4j 1.19 Switches to Stateless Streamable HTTP and Adds Hybrid Milvus Search

LangChain4j 1.19 drops SSE support in favor of a stateless Streamable HTTP protocol, introduces a Milvus‑v2 module that combines dense vector similarity with BM25 keyword matching for hybrid retrieval, and bundles dozens of bug fixes and new integrations across agents, HTTP clients, vector stores, and document parsers.

JavaLLMLangChain4j
0 likes · 9 min read
LangChain4j 1.19 Switches to Stateless Streamable HTTP and Adds Hybrid Milvus Search
The Dominant Programmer
The Dominant Programmer
Aug 20, 2026 · Artificial Intelligence

Deep Dive into Context Engineering with Spring AI Alibaba

This article explains how Spring AI Alibaba’s Agent framework uses Hooks and Interceptors to dynamically control model, tool, and lifecycle contexts, demonstrating the concepts through a complete e‑commerce smart‑customer‑service demo with role‑based tool selection, dynamic prompts, and context compression.

AI AgentContext EngineeringInterceptor
0 likes · 21 min read
Deep Dive into Context Engineering with Spring AI Alibaba
Tech Musings
Tech Musings
Aug 20, 2026 · Fundamentals

Four JMH Cases Reveal How Java JIT Optimizes at the Assembly Level

The article walks through four carefully designed JMH benchmarks—method inlining, SIMD vectorization, lock elimination, and a Netty AsciiString regression—to show how JVM JIT optimizations appear in assembly, explain the performance impact (up to 1500×), and demonstrate how to diagnose and fix real‑world issues using assembly analysis.

JITJMHJava
0 likes · 19 min read
Four JMH Cases Reveal How Java JIT Optimizes at the Assembly Level
The Dominant Programmer
The Dominant Programmer
Aug 19, 2026 · Artificial Intelligence

Persisting Spring AI Alibaba Memory to Redis: A Hands‑On Guide

This guide walks through configuring Spring AI Alibaba 1.1.2.0 to persist an agent's short‑term memory in Redis, covering environment setup, core concepts like Checkpointer and StateSerializer, step‑by‑step Maven project creation, code snippets, common pitfalls, and verification of multi‑turn conversation state across sessions.

AgentJavaRedis
0 likes · 17 min read
Persisting Spring AI Alibaba Memory to Redis: A Hands‑On Guide
MeowKitty Programming
MeowKitty Programming
Aug 19, 2026 · Backend Development

DeepSeek Is Raising Prices: Java Developers Must Recalculate AI Costs

The article analyzes DeepSeek's upcoming price hike, explains why Java projects can no longer treat large‑model calls as cheap infrastructure, outlines three common pitfalls, and provides concrete engineering steps—cost tracking, model routing, budgeting, and testing—to keep AI services affordable and reliable.

AI pricingDeepSeekJava
0 likes · 7 min read
DeepSeek Is Raising Prices: Java Developers Must Recalculate AI Costs
Java Architect Handbook
Java Architect Handbook
Aug 19, 2026 · Backend Development

How Enums Can Streamline Spring Boot Configuration Management

This article demonstrates how to use Java enums together with Spring Boot's @ConfigurationProperties to replace hard‑coded strings in application.yml, improving readability, reducing maintenance effort, and enabling flexible configuration of user types displayed via a Thymeleaf front‑end.

@ConfigurationPropertiesEnumJava
0 likes · 14 min read
How Enums Can Streamline Spring Boot Configuration Management
Architect's Guide
Architect's Guide
Aug 19, 2026 · Backend Development

How to Implement Redis Cache Preheating in Spring

This article explains the concept of cache preheating, provides an abstract cache class, a Spring context utility, and a CommandLineRunner implementation that automatically loads hot data into Redis at startup, demonstrating the approach with a news‑cache example and related controller code.

AbstractCacheCache PreheatingCommandLineRunner
0 likes · 5 min read
How to Implement Redis Cache Preheating in Spring
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Aug 19, 2026 · Backend Development

PDFBox: A Powerful Open‑Source Java Library for PDF Manipulation

This article introduces Apache PDFBox, an open‑source Java library for creating, modifying, and extracting content from PDFs, and provides step‑by‑step Spring Boot 3.5 examples covering text extraction, region extraction, metadata handling, image insertion, form creation, JavaScript actions, and bookmark generation.

JavaPDF manipulationPDF processing
0 likes · 17 min read
PDFBox: A Powerful Open‑Source Java Library for PDF Manipulation
MeowKitty Programming
MeowKitty Programming
Aug 18, 2026 · Backend Development

When AI Writes Whole Projects, What Jobs Remain for Java Backend Developers?

After an AI mistakenly removed three reflection‑based Spring beans from a 5,000‑line service, the author reflects on how AI‑driven code generation is reshaping Java backend roles—from writing code to focusing on architecture, requirements, and AI‑orchestrated testing—highlighting recent survey data and upcoming Spring AI 2.0 features.

AI code generationBackend DevelopmentJava
0 likes · 5 min read
When AI Writes Whole Projects, What Jobs Remain for Java Backend Developers?
The Dominant Programmer
The Dominant Programmer
Aug 18, 2026 · Artificial Intelligence

Comprehensive Guide to Spring AI Alibaba Tools: From Basics to Advanced

This article presents a complete, runnable Spring AI Alibaba Tools example (v1.1.2.0) that explains core concepts, three creation methods, registration techniques, advanced features such as JSON schema generation and custom result conversion, environment setup, testing commands, and common troubleshooting tips.

AI AgentAlibabaJSON Schema
0 likes · 32 min read
Comprehensive Guide to Spring AI Alibaba Tools: From Basics to Advanced
Dabaoshi
Dabaoshi
Aug 18, 2026 · Backend Development

ConcurrentHashMap Deep Dive: Understanding Java’s Core Concurrent Container

This article explains why HashMap isn’t thread‑safe, how Hashtable’s single lock hurts performance, and walks through the evolution from JDK 1.7 segment locks to JDK 1.8’s CAS‑plus‑synchronized bucket locking, including lock‑free size counting and a comparison with CopyOnWriteArrayList for read‑heavy scenarios.

ConcurrentHashMapCopyOnWriteArrayListJDK8
0 likes · 17 min read
ConcurrentHashMap Deep Dive: Understanding Java’s Core Concurrent Container
Dabaoshi
Dabaoshi
Aug 18, 2026 · Backend Development

Thread Pool Mechanics and Tuning: Avoid new Thread() in Production

This article explains why creating raw threads in production is costly, breaks down the seven ThreadPoolExecutor parameters, shows the exact execution flow of a submitted task, compares queue choices and Executors factories, and provides practical tuning, rejection‑policy and graceful‑shutdown guidance.

ExecutorServiceJavaThreadPoolExecutor
0 likes · 16 min read
Thread Pool Mechanics and Tuning: Avoid new Thread() in Production
Yumin Fish Harvest
Yumin Fish Harvest
Aug 18, 2026 · Backend Development

Distributed Snowflake ID Generation in Java: Hutool and MyBatis-Plus Demo

This article walks through the Snowflake algorithm for distributed ID generation, detailing its timestamp, workerId and sequence fields, handling clock rollback and sequence overflow, and provides a complete Java implementation with integration examples for Hutool and MyBatis‑Plus, including configuration and test code.

HutoolJavaMyBatis-Plus
0 likes · 28 min read
Distributed Snowflake ID Generation in Java: Hutool and MyBatis-Plus Demo
Architect's Guide
Architect's Guide
Aug 18, 2026 · Backend Development

Boost CRUD Development Speed 100× with This Open‑Source Code Generator

Manually creating entity classes, CRUD interfaces and SQL for dozens of tables can consume dozens of hours, so the author built an open‑source tool that automatically generates the full backend stack—from table definition to Java models, MyBatis mappers, services and controllers—dramatically accelerating development.

BackendCRUDCode Generation
0 likes · 17 min read
Boost CRUD Development Speed 100× with This Open‑Source Code Generator
Coder Trainee
Coder Trainee
Aug 17, 2026 · Operations

Uncovering the Truth Behind Connection Reset: A Network Timeout Investigation

This article explains the differences among Connection reset, Read timed out, and Connect timed out, outlines typical causes for each, provides step‑by‑step Linux command checks, Java Spring Boot configuration examples, a real‑world case study, and a quick‑reference cheat sheet for troubleshooting network timeouts.

JavaLinuxSpring Boot
0 likes · 8 min read
Uncovering the Truth Behind Connection Reset: A Network Timeout Investigation
Dabaoshi
Dabaoshi
Aug 17, 2026 · Fundamentals

Concurrency 07: Understanding Deadlocks and Thread‑Safety Strategies

This article explains how deadlocks arise from four necessary conditions, shows how to detect them with jstack, outlines practical ways to prevent deadlock, distinguishes livelock and starvation, and presents three prioritized approaches—immutability, thread confinement, and synchronization—to achieve thread safety in Java.

ImmutableJavaLivelock
0 likes · 16 min read
Concurrency 07: Understanding Deadlocks and Thread‑Safety Strategies
Yumin Fish Harvest
Yumin Fish Harvest
Aug 17, 2026 · Backend Development

How to Implement Distributed ID Generation with Segment Mode? A Double‑Buffer Issuer in Practice

The article analyses lock contention caused by per‑request ID generation, derives a segment‑based solution that batches IDs using a configurable step, defines a left‑closed/right‑open interval schema in MySQL, and builds a double‑buffer Java issuer with asynchronous pre‑loading, thorough concurrency handling, testing, and configuration guidelines.

JavaMySQLconcurrency
0 likes · 21 min read
How to Implement Distributed ID Generation with Segment Mode? A Double‑Buffer Issuer in Practice
Java Architecture Diary
Java Architecture Diary
Aug 17, 2026 · Artificial Intelligence

Pure Java OCR with mica-ppocr: How It Parses Documents and Invoices

This article details the pure‑Java mica‑ppocr library built on Java 17 and ONNX Runtime, covering its rapid version evolution, core engine upgrades, structured parsing of six document types, Spring Boot and Solon integration, performance optimizations, and architectural refactors, providing a comprehensive technical overview for developers.

JavaOCRONNX Runtime
0 likes · 12 min read
Pure Java OCR with mica-ppocr: How It Parses Documents and Invoices
Ray's Galactic Tech
Ray's Galactic Tech
Aug 16, 2026 · Backend Development

Ditch Seata: Build a Production‑Ready SAGA Orchestrator with a 500‑Line Java State Machine

This article shows how to replace heavyweight distributed‑transaction frameworks such as Seata with a lightweight, production‑grade SAGA orchestrator built from a Java state machine, MySQL persistence and Spring Boot, covering architecture, state‑machine design, database schema, core orchestration logic, recovery, exception handling and practical deployment tips.

JavaMicroservicesSAGA
0 likes · 46 min read
Ditch Seata: Build a Production‑Ready SAGA Orchestrator with a 500‑Line Java State Machine
Dabaoshi
Dabaoshi
Aug 16, 2026 · Backend Development

AQS Deep Dive: How Java’s AbstractQueuedSynchronizer Powers Concurrency

This article dissects Java’s AbstractQueuedSynchronizer (AQS), explaining its three core components—volatile state, CAS, and a FIFO wait queue—how exclusive and shared modes operate, the step‑by‑step lock acquisition flow, ReentrantLock implementation details, fairness trade‑offs, and the underlying template‑method design pattern.

AQSJavaLockSupport
0 likes · 15 min read
AQS Deep Dive: How Java’s AbstractQueuedSynchronizer Powers Concurrency
Dabaoshi
Dabaoshi
Aug 16, 2026 · Fundamentals

CAS and Java Atomic Classes Explained: Mechanics, Pitfalls, and LongAdder

This article demystifies Java's Compare‑And‑Swap (CAS) instruction, shows how atomic classes like AtomicInteger achieve lock‑free increments, discusses CAS's three main drawbacks, surveys the entire java.util.concurrent.atomic family, and explains how LongAdder improves high‑contention counting.

Atomic ClassesCASJava
0 likes · 15 min read
CAS and Java Atomic Classes Explained: Mechanics, Pitfalls, and LongAdder
CTO Full-Stack Academy
CTO Full-Stack Academy
Aug 16, 2026 · Fundamentals

Mastering Maven: A Complete Guide to Java Build Management

This article explains Maven's role as a Java project manager, covering its core concepts, lifecycle, repositories, plugins, scopes, inheritance, practical setup steps, common use cases, advantages, drawbacks, real‑world project examples, and typical pitfalls.

JavaMavenbuild automation
0 likes · 17 min read
Mastering Maven: A Complete Guide to Java Build Management
Architect's Guide
Architect's Guide
Aug 16, 2026 · Backend Development

How Architects Can Achieve Unified Login Across Company Products

The article explains why traditional session mechanisms break in clustered and multi‑service environments, compares session replication and centralized storage, introduces CAS‑based single sign‑on with ticket flow, contrasts it with OAuth2, and provides a complete Spring‑Boot demo with Redis‑backed session handling.

CASJavaOAuth2
0 likes · 15 min read
How Architects Can Achieve Unified Login Across Company Products
Linyb Geek Road
Linyb Geek Road
Aug 16, 2026 · Artificial Intelligence

Complete Spring AI Stack: Mapping the 2026 Java AI Ecosystem

The article presents a layered roadmap of the 2026 Java AI ecosystem, compares major AI frameworks, LLMs, embedding models, vector databases, and agent toolchains, and offers three concrete stack configurations with cost estimates and practical configuration snippets for architects and technical leaders.

AI StackAgentEmbedding
0 likes · 13 min read
Complete Spring AI Stack: Mapping the 2026 Java AI Ecosystem
Three Knives
Three Knives
Aug 15, 2026 · Backend Development

Why Feat Insists on Human-Written Code While Others Embrace AI?

Feat argues that AI can generate correct code but never code with soul, so it deliberately excludes AI from its core Java web framework to preserve design intent, aesthetic judgment, and long‑term maintainability, warning that over‑reliance on AI erodes developers' critical judgment.

AI code generationBackend DevelopmentJava
0 likes · 9 min read
Why Feat Insists on Human-Written Code While Others Embrace AI?
Yumin Fish Harvest
Yumin Fish Harvest
Aug 15, 2026 · Backend Development

Choosing a Decentralized Distributed ID: UUIDv4 vs UUIDv7 vs ULID vs Nano ID

This article examines how traceId, eventId, and shareId differ in requirements and walks through a detailed comparison of UUIDv4, UUIDv7, ULID, and Nano ID—covering generation principles, ordering characteristics, storage impact, Java code examples, and practical guidance for selecting the right scheme.

JavaUUIDdistributed-id
0 likes · 24 min read
Choosing a Decentralized Distributed ID: UUIDv4 vs UUIDv7 vs ULID vs Nano ID
Java Architect Handbook
Java Architect Handbook
Aug 14, 2026 · Backend Development

System Circuit Breaker Explained: Concepts, State Machine, Frameworks & Interview Tips

The article defines circuit breaker as a self‑protective mechanism that prevents cascade failures in distributed systems, explains the avalanche effect, details the three‑state state machine, compares Hystrix, Sentinel and Resilience4j, provides a Sentinel code example, and lists common interview questions and answers.

Circuit BreakerHystrixJava
0 likes · 14 min read
System Circuit Breaker Explained: Concepts, State Machine, Frameworks & Interview Tips
CodeOnCode
CodeOnCode
Aug 14, 2026 · Operations

Humongous Objects in G1 GC: Why They Fear Contiguous Space and Hurt Performance

Humongous objects in Java's G1 collector are large allocations that require a contiguous set of heap regions, bypass the young generation, inflate old‑generation usage, trigger frequent Young, Mixed or Full GCs, and can dominate CPU and pause time unless the code is refactored or the region size is tuned.

G1GCHumongous
0 likes · 16 min read
Humongous Objects in G1 GC: Why They Fear Contiguous Space and Hurt Performance
Java Architecture Diary
Java Architecture Diary
Aug 14, 2026 · Artificial Intelligence

Use JVM Native Vector API to Remove an External Vector Store in RAG

This guide shows how to replace external vector databases like Milvus or Qdrant with the JVM’s incubating Vector API and the integrallis/vectors library, providing built‑in distance kernels, indexing (FLAT, HNSW, IVF), and persistence, and demonstrates integration with Spring AI and LangChain4j through concise code examples and required JVM flags.

JVM Vector APIJavaLangChain4j
0 likes · 7 min read
Use JVM Native Vector API to Remove an External Vector Store in RAG
Dabaoshi
Dabaoshi
Aug 13, 2026 · Fundamentals

Why Concurrency Is Hard: The Surprising Result of Two Threads Incrementing an int

The article explains why Java concurrency is difficult by showing that two threads each incrementing an int ten thousand times may not produce twenty thousand, then explores the motivations for multithreading, the differences between concurrency and parallelism, and the three core challenges of visibility, atomicity, and ordering.

AtomicityJavaThread Lifecycle
0 likes · 23 min read
Why Concurrency Is Hard: The Surprising Result of Two Threads Incrementing an int
Dabaoshi
Dabaoshi
Aug 13, 2026 · Fundamentals

Design Patterns 23 – Final Overview: Mapping All 23 Patterns onto One Diagram

The article wraps up the "Design Pattern Dissection" series by showing how the 23 GoF patterns appear in JDK, Spring and MyBatis, clarifying the most confusing pattern pairs, warning against over‑design, and presenting a comprehensive map that links each pattern to the seven core design principles.

Design PatternsGoFJava
0 likes · 12 min read
Design Patterns 23 – Final Overview: Mapping All 23 Patterns onto One Diagram
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Aug 13, 2026 · Backend Development

Discover Spring Boot’s New BeanFactoryInitializer – Early Bean Initialization Made Easy

Spring Boot 3.5 introduces the BeanFactoryInitializer extension point, allowing developers to safely pre‑instantiate specific beans before the regular singleton pool, replace unsafe BeanFactoryPostProcessor hacks, fetch remote configurations, and programmatically register @Tool‑annotated beans, all demonstrated with concrete code examples and a working test.

BeanFactoryInitializerFactoryBeanJava
0 likes · 8 min read
Discover Spring Boot’s New BeanFactoryInitializer – Early Bean Initialization Made Easy
Top Architecture Tech Stack
Top Architecture Tech Stack
Aug 12, 2026 · Industry Insights

Has IntelliJ IDEA Lost Its Crown to VS Code?

The article analyzes how JetBrains is exposing IntelliJ IDEA’s Java/Kotlin language intelligence to VS Code via an LSP‑based extension, arguing that the shift reflects a broader move from monolithic IDEs to modular code‑understanding services that empower both human developers and AI agents in large‑scale projects.

AI AgentIDEIntelliJ IDEA
0 likes · 13 min read
Has IntelliJ IDEA Lost Its Crown to VS Code?
CTO Full-Stack Academy
CTO Full-Stack Academy
Aug 12, 2026 · Fundamentals

Understanding Java Forward Compilation, Decompilation, and Class Loading

The article explains how Java source code is compiled into bytecode, how class loaders (including the bootstrap, extension, application, and custom loaders) load and verify classes using the parent‑delegation model, and how encryption, obfuscation, and decompilation tools affect code protection and debugging.

ClassLoaderCompilationDecompilation
0 likes · 23 min read
Understanding Java Forward Compilation, Decompilation, and Class Loading
DeWu Technology
DeWu Technology
Aug 12, 2026 · Artificial Intelligence

Building a Judgmental RAG Agent: From Simple Search to Autonomous Search‑Filter‑Dive‑Validate Loop

This article details the design of a composite‑retrieval RAG Agent using AgentScope 2.0, covering its HarnessAgent architecture, ReAct loop, middleware‑driven three‑stage quality pipeline, multi‑source parallel search, multimodal image handling, production‑grade SSE resume, model failover, and future roadmap.

AgentScopeComposite RetrievalJava
0 likes · 23 min read
Building a Judgmental RAG Agent: From Simple Search to Autonomous Search‑Filter‑Dive‑Validate Loop
Niu Liu
Niu Liu
Aug 12, 2026 · Backend Development

WeChat Pay Service Provider: Entity-First Payment Routing for Multi-Store Systems

This article details a production-grade WeChat Pay service provider integration for multi-store, multi-entity scenarios, covering domain modeling, versioned payment routing, sub-merchant onboarding state machines, cashier configuration layers, callback verification, refund snapshot isolation, three-level reconciliation, and a 10-item launch checklist.

APIv3Cashier ConfigurationJava
0 likes · 28 min read
WeChat Pay Service Provider: Entity-First Payment Routing for Multi-Store Systems
Architecture Digest
Architecture Digest
Aug 12, 2026 · Artificial Intelligence

Practical Multi‑Model Routing with Embabel: Mixing DeepSeek and Claude

The article explains why a single LLM cannot satisfy all stages of an AI pipeline, introduces Embabel's declarative routing that separates concerns across four layers, shows how a four‑dimensional decision matrix assigns cheap or best models to each step, and presents benchmark results demonstrating up to 70% cost reduction while retaining 95% of the quality of an all‑Claude solution.

ClaudeDeepSeekEmbabel
0 likes · 16 min read
Practical Multi‑Model Routing with Embabel: Mixing DeepSeek and Claude
Architect's Tech Stack
Architect's Tech Stack
Aug 12, 2026 · Backend Development

A Read‑Only ORM That’s 100× Faster Than MyBatis

BeanSearcher, a read‑only Java ORM, generates SQL from declarative annotations and maps HTTP query parameters directly to query conditions, allowing complex multi‑table, aggregation and sorting queries with a single line of code and claiming performance up to a hundred times faster than MyBatis.

BeanSearcherJavaMyBatis
0 likes · 4 min read
A Read‑Only ORM That’s 100× Faster Than MyBatis
Java Companion
Java Companion
Aug 12, 2026 · Industry Insights

Why Java Basics Disappear from Interviews: RAG and Agents Now Dominate AI Jobs

Recent interview trends show a sharp shift from traditional Java topics to AI‑focused questions about Retrieval‑Augmented Generation and Agent design, with data revealing AI roles topping demand and salary charts while companies struggle to find talent capable of deploying large models in real business contexts.

AI interview trendsAI job marketAgent
0 likes · 4 min read
Why Java Basics Disappear from Interviews: RAG and Agents Now Dominate AI Jobs
Architect's Guide
Architect's Guide
Aug 12, 2026 · Backend Development

Six Years In, This Java Code Made Me Cringe

The article recounts a six‑year veteran’s encounter with a tangled Java data‑isolation implementation, explains how a custom MyBatis interceptor and annotation were used to inject and filter an env field across dozens of tables, and reflects on the code smell and refactoring lessons learned.

Custom AnnotationData IsolationInterceptor
0 likes · 13 min read
Six Years In, This Java Code Made Me Cringe
Java Architecture Diary
Java Architecture Diary
Aug 12, 2026 · Cloud Native

Why Upgrading Your MCP Server to 2.0 Solves Stateless Session Issues

The article explains how MCP 1.x's stateful handshake caused node‑crash failures, sticky sessions, and serverless incompatibility, and how the 2.0 release removes the handshake, makes each request self‑describing via _meta and HTTP headers, introduces MRTR for multi‑round interactions, and provides a Java/TypeScript code walkthrough demonstrating the new stateless behavior.

Cloud NativeJavaKubernetes
0 likes · 8 min read
Why Upgrading Your MCP Server to 2.0 Solves Stateless Session Issues
Dabaoshi
Dabaoshi
Aug 11, 2026 · Fundamentals

Why the Iterator Pattern Is the Most Used Yet Unnoticed Design Pattern in Java

The article explains how the Iterator pattern, built into Java as Iterable and Iterator interfaces, lets you traverse any collection uniformly without exposing its internal structure, demonstrates the fail‑fast mechanism, and shows when custom collections should implement Iterable.

CollectionDesign PatternIterable
0 likes · 13 min read
Why the Iterator Pattern Is the Most Used Yet Unnoticed Design Pattern in Java
Dabaoshi
Dabaoshi
Aug 11, 2026 · Fundamentals

Command Pattern: Turning Operations into Objects for Undo, Redo, and Queuing

The article explains how the Command pattern encapsulates a request as an object, enabling storage, queuing, undo/redo, and decoupling between request senders and executors, with concrete Java examples and guidance on when the pattern is appropriate.

Command PatternDesign PatternsInvoker
0 likes · 13 min read
Command Pattern: Turning Operations into Objects for Undo, Redo, and Queuing
ITPUB
ITPUB
Aug 11, 2026 · Fundamentals

How Project Valhalla Repays Java’s 20‑Year Generics Debt

The article traces the 20‑year history of Java’s type‑erased generics, contrasts it with C#’s reified generics, explains the performance and compatibility trade‑offs, and shows how Project Valhalla’s value classes and generic specialization finally close the gap.

JavaPerformanceProject Valhalla
0 likes · 23 min read
How Project Valhalla Repays Java’s 20‑Year Generics Debt
Architecture Digest
Architecture Digest
Aug 11, 2026 · Backend Development

Run Your First Embabel Java Agent in 30 Minutes: A Hands‑On Guide

This article walks you through setting up the environment, creating a Spring Boot project, defining strong‑typed domain models, implementing @Action methods, declaring goals, and running an interactive shell so you can build and execute a fully functional Embabel Java Agent that automatically generates a research brief.

AIEmbabelJava
0 likes · 9 min read
Run Your First Embabel Java Agent in 30 Minutes: A Hands‑On Guide
java1234
java1234
Aug 11, 2026 · Backend Development

Why More Developers Are Choosing Guava for Java Projects

Guava, Google’s core Java library, offers a rich set of utilities—immutable collections, null‑safe string handling, local caches, and concurrency helpers—that reduce boilerplate, prevent bugs, and integrate with a single Maven/Gradle dependency, making it a popular choice for modern Java backend development.

Google Core LibrariesGradleGuava
0 likes · 9 min read
Why More Developers Are Choosing Guava for Java Projects
Architect's Guide
Architect's Guide
Aug 11, 2026 · Backend Development

Boosting API Extensibility in SpringBoot with the Strategy Pattern

The article demonstrates how to combine SpringBoot with the Strategy pattern and a simple factory to route different business operations—add, subtract, multiply, divide—through a single API, registering strategy beans in a map for easy extension without modifying existing code.

Dependency InjectionDesign PatternsJava
0 likes · 7 min read
Boosting API Extensibility in SpringBoot with the Strategy Pattern
Java Tech Workshop
Java Tech Workshop
Aug 11, 2026 · Backend Development

Achieving 6 Million Orders per Second with SpringBoot and LMAX Disruptor

The article explains why traditional Java BlockingQueue struggles under high load, introduces the LMAX Disruptor’s lock‑free ring buffer design, compares performance showing up to 600 万+ events per second versus 100 万 for ArrayBlockingQueue, and provides step‑by‑step SpringBoot integration with code examples and best‑practice tips.

DisruptorJavaPerformance
0 likes · 17 min read
Achieving 6 Million Orders per Second with SpringBoot and LMAX Disruptor
Su San Talks Tech
Su San Talks Tech
Aug 11, 2026 · Backend Development

Why Is Hutool 5 Gaining So Many Users?

Hutool 5 has become the de‑facto utility library for modern Java projects because it eliminates duplicated, error‑prone hand‑crafted utils, reduces code volume by up to 50%, offers a stable, modular API that works with JDK 8+, and provides ready‑to‑use features for strings, dates, files, HTTP, JSON, encryption and even AI integration.

HutoolJavaPerformance
0 likes · 27 min read
Why Is Hutool 5 Gaining So Many Users?
Dabaoshi
Dabaoshi
Aug 10, 2026 · Fundamentals

State Pattern Explained: Turning Conditional Logic into Flowing State Transitions

The article demonstrates how the State design pattern replaces tangled if‑else state checks with dedicated state classes, using an order lifecycle example to compare it with Strategy, explain role responsibilities, transition driving mechanisms, and guidelines for when to apply the pattern.

JavaState PatternStrategy Pattern
0 likes · 15 min read
State Pattern Explained: Turning Conditional Logic into Flowing State Transitions
Dabaoshi
Dabaoshi
Aug 10, 2026 · Fundamentals

Chain of Responsibility Pattern: Build Scalable, Extensible Validation Chains

The article explains the Chain of Responsibility design pattern, showing how to replace tangled nested if‑checks in order‑validation logic with a series of independent handler objects linked together, and demonstrates its implementation, variations, real‑world uses in filters, interceptors, and guidelines for when the pattern is appropriate.

Chain of ResponsibilityDesign PatternJava
0 likes · 15 min read
Chain of Responsibility Pattern: Build Scalable, Extensible Validation Chains
Java Architect Handbook
Java Architect Handbook
Aug 10, 2026 · Cloud Native

Tired of XXL‑Job? Try This Elegant Nacos‑Based Scheduling Solution

The article analyses why XXL‑Job’s separate registration, configuration, and weak sharding cause state inconsistency, observability gaps, and duplicate processing, then proposes JobFlow – a lightweight scheduler that removes redundant components, adds full‑traceId tracing, true sharding with distributed locks, exponential retry, and cloud‑native configuration managed by Nacos, all illustrated with concrete code snippets and deployment diagrams.

Cloud NativeJavaNacos
0 likes · 21 min read
Tired of XXL‑Job? Try This Elegant Nacos‑Based Scheduling Solution
Architect's Guide
Architect's Guide
Aug 10, 2026 · Backend Development

Building a Dynamic Thread Pool with SpringBoot and Nacos

This article demonstrates how to create a dynamically configurable thread pool in a SpringBoot application by leveraging Nacos as a centralized configuration center, covering dependencies, YAML setup, Java implementation, controller endpoints, and runtime testing.

ConfigurationJavaNacos
0 likes · 9 min read
Building a Dynamic Thread Pool with SpringBoot and Nacos
Architecture & Thinking
Architecture & Thinking
Aug 10, 2026 · Backend Development

From a Config Update API to Locking Strategies: Optimistic vs Pessimistic Locks Explained

After encountering potential data overwrite when updating configuration via an API, the author implements an optimistic lock using version numbers and revisits the fundamentals, comparing pessimistic and optimistic locking mechanisms, their implementations in SQL and Java, performance traits, pitfalls, and guidelines for choosing the appropriate strategy.

JavaOptimistic LockPessimistic Lock
0 likes · 8 min read
From a Config Update API to Locking Strategies: Optimistic vs Pessimistic Locks Explained
Dabaoshi
Dabaoshi
Aug 9, 2026 · Fundamentals

Observer Pattern: Decoupling Order Payment Success Actions via Publish‑Subscribe

The article explains the Observer pattern by first showing the problems of hard‑coding post‑payment actions, then detailing how defining a subject, observer interface, and concrete observers decouples the system, discusses push vs pull notification models, and illustrates real‑world uses in Spring events, GUI listeners, and message queues.

JavaObserver PatternPublish‑Subscribe
0 likes · 14 min read
Observer Pattern: Decoupling Order Payment Success Actions via Publish‑Subscribe
Dabaoshi
Dabaoshi
Aug 9, 2026 · Fundamentals

Template Method Pattern: Fix the Skeleton, Vary the Steps

The article explains the Template Method design pattern, showing how to lock a fixed process skeleton in a parent class while delegating variable steps to subclasses, contrasting it with the Strategy pattern and illustrating its use in real‑world frameworks.

Design PatternFinalHook Method
0 likes · 14 min read
Template Method Pattern: Fix the Skeleton, Vary the Steps
Java Tech Enthusiast
Java Tech Enthusiast
Aug 9, 2026 · Backend Development

Spring Boot + Disruptor: Achieving Ultra‑Fast High‑Concurrency Processing for 6 Million Orders per Second

This article explains how to replace traditional message queues with LMAX Disruptor in a Spring Boot application, covering its core concepts, step‑by‑step implementation, and a demo that demonstrates lock‑free, high‑throughput processing capable of handling six million orders per second.

DisruptorJavaSpring Boot
0 likes · 10 min read
Spring Boot + Disruptor: Achieving Ultra‑Fast High‑Concurrency Processing for 6 Million Orders per Second
Architecture Digest
Architecture Digest
Aug 9, 2026 · Backend Development

Setting Up Trae IDE for Spring AI: A Quick‑Start Guide

This article walks Java developers through installing Trae IDE, configuring the required JDK, Maven and Spring AI dependencies, creating a Spring Boot project, adding AI model settings, implementing a chat controller with synchronous and streaming endpoints, and troubleshooting common issues.

AIAPI keyBuilder mode
0 likes · 12 min read
Setting Up Trae IDE for Spring AI: A Quick‑Start Guide
SpringMeng
SpringMeng
Aug 9, 2026 · Backend Development

Why Even Experienced Java Developers Misunderstand isEmpty vs. isBlank

This article explains the precise differences between Apache Commons Lang's StringUtils.isEmpty, isBlank, and their related methods, providing concrete examples, code snippets, and usage guidelines to help developers avoid common pitfalls when checking string emptiness in Java.

Apache Commons LangCode ExamplesJava
0 likes · 7 min read
Why Even Experienced Java Developers Misunderstand isEmpty vs. isBlank
Java Tech Workshop
Java Tech Workshop
Aug 9, 2026 · Backend Development

How Does Spring Boot Load Its Logging System?

This article explains Spring Boot's logging architecture, the early initialization process driven by LoggingApplicationListener, the three‑layer design with SLF4J, bridge packages and Logback, configuration file loading order, differences between logback.xml and logback‑spring.xml, and common troubleshooting steps.

ConfigurationJavaLogback
0 likes · 16 min read
How Does Spring Boot Load Its Logging System?
Dabaoshi
Dabaoshi
Aug 8, 2026 · Fundamentals

Understanding JVM Class Loading: Mechanisms, Delegation, and Custom ClassLoaders

This article walks through the full lifecycle of a Java class—from loading, verification, preparation, and resolution to initialization, usage, and unloading—explains active versus passive references, the parent‑delegation model, JDK 8‑to‑17 module‑system changes, and shows how to write a custom ClassLoader for class isolation.

Class LoadingClassLoaderCustom ClassLoader
0 likes · 26 min read
Understanding JVM Class Loading: Mechanisms, Delegation, and Custom ClassLoaders
Java Tech Enthusiast
Java Tech Enthusiast
Aug 8, 2026 · Backend Development

Why Does Kafka Re‑Consume Tens of Thousands of Messages After a Successful Offset Commit?

The article explains why Kafka consumers can reprocess tens of thousands of messages after a restart despite successful offset commits, detailing the roles of automatic commit timing, rebalance triggers, GC pauses, and the limitations of manual commits, and offers practical configuration and idempotent processing solutions.

ConsumerJavaKafka
0 likes · 8 min read
Why Does Kafka Re‑Consume Tens of Thousands of Messages After a Successful Offset Commit?
Three Knives
Three Knives
Aug 8, 2026 · Backend Development

How One Developer and AI Migrated RuoYi-Vue to Feat in Hours – A Quiet Java Backend Revolution

In a weekend experiment, a solo developer used AI tools to port the popular RuoYi-Vue Spring Boot admin system to the native AOT framework Feat, achieving 14 of 18 core features with zero front‑end changes, illustrating the rise of AI‑augmented solo development and the accelerating shift toward AOT‑based Java backends.

AI-assisted developmentAOTFeat framework
0 likes · 9 min read
How One Developer and AI Migrated RuoYi-Vue to Feat in Hours – A Quiet Java Backend Revolution
Architecture & Thinking
Architecture & Thinking
Aug 8, 2026 · Fundamentals

Java Memory Model and Instruction Reordering: From Happens‑Before to Memory Barriers Explained

Most hidden thread‑safety bugs in Java stem from instruction reordering and memory‑visibility issues rather than simple atomicity conflicts; this article dissects the hardware‑level reordering, JMM’s happens‑before rules, and memory‑fence mechanisms, illustrating each concept with concrete code examples and classic concurrency pitfalls.

Happens-BeforeJavaMemory Barriers
0 likes · 15 min read
Java Memory Model and Instruction Reordering: From Happens‑Before to Memory Barriers Explained
java1234
java1234
Aug 8, 2026 · Backend Development

Why Hutool 5 Is Gaining Popularity Among Java Developers

The article explains how Hutool 5 consolidates common Java utilities—such as string handling, date formatting, file I/O, HTTP requests, and cryptography—into concise, ready‑to‑use methods, reducing boilerplate code, simplifying project setup, and improving maintainability.

Code ExampleGradleHutool
0 likes · 11 min read
Why Hutool 5 Is Gaining Popularity Among Java Developers