Tagged articles

Java

5000 articles · Page 5 of 50
Java Tech Enthusiast
Java Tech Enthusiast
Jun 15, 2026 · Backend Development

Spring Boot Interceptor vs Filter: 5 Pitfalls and Choosing the Right One for Login Checks

Spring Boot’s Filter and Interceptor can both intercept requests, but developers often misuse them; this article explains five frequent traps—null autowiring in Filters, execution order mistakes, @Value timing issues in Interceptors, Swagger blocking, and exception handling—offering concrete fixes and a decision guide.

InterceptorJavaLogin Validation
0 likes · 13 min read
Spring Boot Interceptor vs Filter: 5 Pitfalls and Choosing the Right One for Login Checks
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 15, 2026 · Backend Development

14 Real-World Scenarios Highlighting Core Distributed Caching Issues in Spring Boot

This article presents fourteen practical scenarios covering the design, pitfalls, strategies, and implementation details of distributed caching in Spring Boot, including cache breakdown prevention, write‑through vs. write‑behind, eviction policies, negative caching, secondary caches, cache‑aside pattern, warming, monitoring, consistency, and custom key generation, all illustrated with concrete code examples.

Cache ConsistencyCache EvictionJava
0 likes · 17 min read
14 Real-World Scenarios Highlighting Core Distributed Caching Issues in Spring Boot
Java Architect Handbook
Java Architect Handbook
Jun 15, 2026 · Industry Insights

Shocking Bank Programmer Salaries Revealed

This article analyzes the rapidly growing demand for IT positions in Chinese banks, categorizes the banks, details typical roles, written tests, interview formats, and provides concrete salary ranges for each institution, offering a comprehensive view of the banking tech job market.

Bank ITChinaInterview
0 likes · 14 min read
Shocking Bank Programmer Salaries Revealed
Su San Talks Tech
Su San Talks Tech
Jun 15, 2026 · Artificial Intelligence

How I Doubled RAG Accuracy with Targeted Optimizations

This article walks through a comprehensive, step‑by‑step analysis of why RAG pipelines often underperform and presents concrete optimizations—including OCR preprocessing, table extraction, metadata enrichment, recursive chunking, embedding fine‑tuning, hybrid vector‑keyword retrieval, reranking, prompt templates, and a production‑grade Java implementation—backed by code snippets, benchmark figures, and evaluation metrics.

ChunkingHybrid RetrievalJava
0 likes · 36 min read
How I Doubled RAG Accuracy with Targeted Optimizations
IoT Full-Stack Technology
IoT Full-Stack Technology
Jun 15, 2026 · Backend Development

Quickly Secure Spring Boot APIs with RSA Encryption

This article walks through the fundamentals of RSA encryption, illustrates two communication scenarios, and provides a step‑by‑step guide to add RSA‑based request/response encryption to a Spring Boot project—including Maven setup, annotation usage, key configuration, front‑end JavaScript encryption, testing, and common pitfalls.

API EncryptionJSEncryptJava
0 likes · 11 min read
Quickly Secure Spring Boot APIs with RSA Encryption
Programmer XiaoFu
Programmer XiaoFu
Jun 15, 2026 · Backend Development

Why a Simple Redis Mutex Lock Isn’t Enough for Cache Breakdown – When to Use Never‑Expire or Logical Expiration

The article analyzes why a basic Redis mutex lock can cause thread blocking, latency spikes, and service collapse under high concurrency, and compares it with logical expiration and never‑expire with proactive updates, explaining their trade‑offs and how to choose the right cache‑breakdown mitigation strategy.

CacheJavaLogical Expiration
0 likes · 12 min read
Why a Simple Redis Mutex Lock Isn’t Enough for Cache Breakdown – When to Use Never‑Expire or Logical Expiration
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 15, 2026 · Backend Development

Zero‑Intrusion Spring Boot Unified Response: 4 Low‑Level Solutions

The article explains why inconsistent API responses hurt front‑end/back‑end projects, introduces a unified result object, and demonstrates four zero‑intrusion, low‑level techniques—custom ResponseBodyAdvice, return‑value handler, HandlerMethod adapter, and message converter—each with code samples and verification screenshots.

Custom Message ConverterHandlerMethodReturnValueHandlerJava
0 likes · 9 min read
Zero‑Intrusion Spring Boot Unified Response: 4 Low‑Level Solutions
Tech Musings
Tech Musings
Jun 14, 2026 · Backend Development

Does Netty’s io_uring Make the 2× CPU Thread Rule Obsolete?

A benchmark on an 8‑core Linux 6.6 system shows that switching Netty from epoll to io_uring lets a half‑sized thread pool achieve 3 % higher throughput, more than double per‑thread efficiency, and a 67 % reduction in CPU migrations, challenging the traditional rule of using twice‑the‑core thread counts.

JavaNettyPerformance
0 likes · 21 min read
Does Netty’s io_uring Make the 2× CPU Thread Rule Obsolete?
Architect's Tech Stack
Architect's Tech Stack
Jun 14, 2026 · Backend Development

Why Quarkus Can Outrun Spring Boot: Launching Apps in Under 0.002 Seconds

The article compares Spring Boot and Quarkus, explaining how Quarkus’s build‑time optimizations, native image support, and container‑first design dramatically reduce startup time and memory usage, while also discussing development experience, extension mechanisms, and the trade‑offs involved in adopting the framework.

JavaKubernetesMicroProfile
0 likes · 14 min read
Why Quarkus Can Outrun Spring Boot: Launching Apps in Under 0.002 Seconds
liandk
liandk
Jun 14, 2026 · Fundamentals

Factory Method Pattern: Clear Explanation, Code Example, and Real-World Scenarios

This article explains the Factory Method design pattern, illustrates its core principle of separating object creation from business logic, presents everyday analogies, and provides a complete Java implementation with abstract product, concrete products, abstract factory, concrete factories, and a test driver.

DecouplingDesign PatternFactory Method
0 likes · 4 min read
Factory Method Pattern: Clear Explanation, Code Example, and Real-World Scenarios
Architect's Guide
Architect's Guide
Jun 14, 2026 · Cloud Native

18 Visual Guides to Mastering Java Containerization Best Practices

This guide walks through choosing base images, JDK vs JRE, Oracle versus OpenJDK, JVM implementations, signal handling for graceful shutdown, memory‑limit adaptation across JDK versions, DNS caching behavior, and GraalVM native compilation, providing concrete Dockerfile examples, benchmark results, and actionable recommendations for Java containerization.

DockerGraalVMJDK
0 likes · 24 min read
18 Visual Guides to Mastering Java Containerization Best Practices
Java Tech Workshop
Java Tech Workshop
Jun 14, 2026 · Backend Development

Spring Bean Scopes: 5 Types, Common Pitfalls and Concurrency Gotchas

The article explains the five Spring Bean scopes, clarifies that scope only controls instance count and not thread safety, and walks through real‑world concurrency bugs such as mutable singleton fields, prototype beans losing their prototype nature, and request‑scoped beans failing in async threads, offering concrete fixes and usage recommendations.

Bean ScopeConcurrencyJava
0 likes · 10 min read
Spring Bean Scopes: 5 Types, Common Pitfalls and Concurrency Gotchas
Java Tech Enthusiast
Java Tech Enthusiast
Jun 13, 2026 · Backend Development

MyBatis-Plus vs MyBatis-Flex: Which One Is Better?

This article compares MyBatis-Plus and MyBatis-Flex across eight dimensions—including design philosophy, development efficiency, query flexibility, performance, database support, advanced features, dependency weight, and community ecosystem—to help developers choose the most suitable persistence framework for their projects.

ComparisonJavaMyBatis-Flex
0 likes · 18 min read
MyBatis-Plus vs MyBatis-Flex: Which One Is Better?
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 13, 2026 · Backend Development

10 Fatal @Transactional Mistakes in Spring Boot (The Last One Is Critical)

This article examines ten common pitfalls when using Spring Boot's @Transactional annotation, explains why each issue occurs—from self‑invocation and private methods to swallowed exceptions, read‑only settings, long transactions, lock interactions, and deadlocks—and provides concrete code examples and three‑step solutions to avoid them.

Backend DevelopmentJavaSpring Boot
0 likes · 16 min read
10 Fatal @Transactional Mistakes in Spring Boot (The Last One Is Critical)
liandk
liandk
Jun 13, 2026 · Fundamentals

Singleton Pattern: Simple Explanation, Java Code Samples, and Real‑World Use Cases

The article explains the Singleton pattern—ensuring a class has only one global instance—to save resources and avoid conflicts, illustrates two Java implementations (eager and lazy), and lists typical scenarios such as logging utilities, connection pools, global configuration, and exclusive resources.

Design PatternEager InitializationJava
0 likes · 4 min read
Singleton Pattern: Simple Explanation, Java Code Samples, and Real‑World Use Cases
macrozheng
macrozheng
Jun 13, 2026 · Backend Development

How MybatisPlus Pro Supercharges CRUD Development Efficiency

The article explains how MybatisPlus Pro extends MybatisPlus to eliminate repetitive Service and Controller code, provides a ready‑to‑use BaseController, automatic QueryWrapper generation, and deepens the understanding of its dynamic proxy, interceptor chain and SQL injection mechanisms, while also outlining its strengths, limitations, suitable scenarios and common pitfalls.

CRUDJavaMybatisPlus
0 likes · 22 min read
How MybatisPlus Pro Supercharges CRUD Development Efficiency
Java Tech Workshop
Java Tech Workshop
Jun 13, 2026 · Backend Development

Which DI Injection Method Should You Use in Production? Field vs Setter vs Constructor

The article compares Spring's three dependency‑injection styles—field, setter, and constructor—showing code, execution order, source‑code mechanics, risks such as null‑pointer windows and reflection tampering, and concludes that constructor injection (preferably with Lombok @RequiredArgsConstructor) is the production‑grade choice.

Constructor InjectionField InjectionJava
0 likes · 10 min read
Which DI Injection Method Should You Use in Production? Field vs Setter vs Constructor
Architect's Tech Stack
Architect's Tech Stack
Jun 12, 2026 · Backend Development

Why Manual JAR Deployment Is Outdated: Embrace Dynamic Hot‑Deployment Plugins

The article explains why rebuilding and redeploying a whole JAR for small rule or script changes is inefficient, distinguishes development‑time hot reload from production hot deployment, and shows how a plugin architecture using URLClassLoader and ServiceLoader provides granular, rollback‑friendly, and extensible updates while warning of classloader leaks and dependency conflicts.

Hot DeploymentJavaServiceLoader
0 likes · 8 min read
Why Manual JAR Deployment Is Outdated: Embrace Dynamic Hot‑Deployment Plugins
Java Tech Enthusiast
Java Tech Enthusiast
Jun 12, 2026 · Artificial Intelligence

AgentScope Java 2.0 Released: Enterprise‑Ready AI Agent Framework Explained

AgentScope Java 2.0 launches to solve the “Demo Curse” by adding native distributed deployment, full‑stack multi‑tenant isolation, fine‑grained permission control, a file‑driven Workspace, middleware extensions and robust model fault‑tolerance, turning prototype agents into production‑grade services.

AIAgentFrameworkAgentScope
0 likes · 26 min read
AgentScope Java 2.0 Released: Enterprise‑Ready AI Agent Framework Explained
Top Architect
Top Architect
Jun 11, 2026 · Backend Development

How to Speed Up Large-Scale Queries with MyBatisPlus

The article analyzes why conventional MyBatisPlus queries become slow and memory‑intensive when handling millions of rows, then demonstrates three alternatives—regular pagination, stream query, and cursor query—showing their implementation, trade‑offs, and practical tips for avoiding OOM and improving performance.

JavaLarge DataMySQL
0 likes · 10 min read
How to Speed Up Large-Scale Queries with MyBatisPlus
Java Architect Handbook
Java Architect Handbook
Jun 11, 2026 · Backend Development

Building a Visual Rule Engine with Spring Boot and URule

This article walks through the motivation, architecture, installation steps, core concepts, and practical usage of integrating the URule visual rule engine into a Spring Boot project, including library files, wizard and script rule sets, decision tables, and a real‑world promotion scenario.

JavaRule EngineSpring Boot
0 likes · 17 min read
Building a Visual Rule Engine with Spring Boot and URule
Architect Chen
Architect Chen
Jun 11, 2026 · Fundamentals

Understanding Java Thread Deadlocks: 5 Common Scenarios and How to Fix Them

The article defines Java thread deadlock, illustrates five typical deadlock patterns with diagrams, shows how they cause threads to wait indefinitely, and presents five practical solutions—including consistent lock ordering, reducing nested locks, shrinking lock scope, using timed locks, and adopting lock‑free designs.

ConcurrencyDeadlockJava
0 likes · 3 min read
Understanding Java Thread Deadlocks: 5 Common Scenarios and How to Fix Them
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 11, 2026 · Backend Development

Spring Boot 4.1 Released: 20 New Features and Key Improvements

Spring Boot 4.1 introduces 20 major updates, including removal of deprecated APIs, new gRPC support, enhanced Jackson configuration, improved observability with OpenTelemetry, SSL for RabbitMQ streams, lazy JDBC connections, and numerous Gradle and Maven plugin enhancements, while providing detailed migration guidance for developers.

Docker ComposeJavaSpring Boot
0 likes · 16 min read
Spring Boot 4.1 Released: 20 New Features and Key Improvements
samdeepthink
samdeepthink
Jun 11, 2026 · Fundamentals

Why Code Reuse Matters When Integrating with Low‑Code Platforms

The article shows how duplicating 20‑40 lines of request‑building code for each low‑code table operation leads to maintenance risk, and demonstrates extracting two generic Java methods that encapsulate invariant logic while parameterising fields, tables, and apps, dramatically reducing code and clarifying responsibilities.

API designDRY principleJava
0 likes · 8 min read
Why Code Reuse Matters When Integrating with Low‑Code Platforms
Architect's Guide
Architect's Guide
Jun 11, 2026 · Fundamentals

Mastering Java Lambda Expressions: A Deep Dive

This article explains what Java lambda expressions are, why they were added in Java 8, their syntax and classification, how they relate to functional interfaces, and demonstrates practical examples including anonymous inner‑class refactoring, stream usage, method references, and custom functional interfaces.

Functional InterfaceJavaLambda
0 likes · 16 min read
Mastering Java Lambda Expressions: A Deep Dive
CodeNotes
CodeNotes
Jun 10, 2026 · Backend Development

After a Decade with Map, Are You Still Using containsKey + get + put?

The article reviews the seven Java 8 Map convenience APIs—getOrDefault, putIfAbsent, computeIfAbsent, computeIfPresent, compute, merge, and forEach—plus replaceAll and Map.of, showing concise code examples, best‑practice recommendations, concurrency considerations, and common pitfalls for modern Java developers.

APICollectionsConcurrency
0 likes · 10 min read
After a Decade with Map, Are You Still Using containsKey + get + put?
LuTiao Programming
LuTiao Programming
Jun 10, 2026 · Backend Development

Why 90% of Developers Misuse Codex for Spring Boot – The Critical First Mistake

Most developers give AI coding tools vague one‑sentence requests for Spring Boot tasks, causing the AI to generate code that violates project conventions, while a detailed engineering task sheet that includes context, constraints, and verification steps dramatically improves the quality and safety of the generated code.

AGENTS.mdCodexJava
0 likes · 16 min read
Why 90% of Developers Misuse Codex for Spring Boot – The Critical First Mistake
Cloud Architecture
Cloud Architecture
Jun 10, 2026 · Backend Development

Million-Connection Single-Server with Netty: Architecture, Extreme Tuning, and Production Deployment

This article details how to design and tune a Netty‑based single‑machine gateway capable of handling one million concurrent TCP long‑connections, covering network model, memory management, protocol design, OS and JVM optimizations, clustering, load balancing, graceful shutdown, monitoring, and practical deployment considerations.

JavaLong ConnectionsNetty
0 likes · 43 min read
Million-Connection Single-Server with Netty: Architecture, Extreme Tuning, and Production Deployment
Cloud Architecture
Cloud Architecture
Jun 10, 2026 · Backend Development

How to End Duplicate Consumption in RocketMQ with Idempotence and High‑Concurrency Architecture

The article explains why RocketMQ inevitably delivers duplicate messages under at‑least‑once semantics, analyzes root causes in producer, broker and consumer stages, and presents a production‑grade idempotent solution that combines business keys, Redis caching, Redisson locks, a MySQL idempotent table, AOP interception, and comprehensive monitoring to guarantee exactly‑once business outcomes even under high concurrency and Kubernetes graceful shutdown.

JavaRedisRocketMQ
0 likes · 34 min read
How to End Duplicate Consumption in RocketMQ with Idempotence and High‑Concurrency Architecture
CodeNotes
CodeNotes
Jun 10, 2026 · Fundamentals

How Java 8’s Default and Static Interface Methods Transform Design Patterns

The article explains how Java 8 added default and static methods to interfaces—allowing method bodies, enabling backward‑compatible extensions, illustrating usage with code examples, handling multiple‑interface conflicts, and introducing Java 9 private methods, while summarizing common pitfalls and best‑practice guidelines.

JavaJava 8default method
0 likes · 9 min read
How Java 8’s Default and Static Interface Methods Transform Design Patterns
Top Architect
Top Architect
Jun 10, 2026 · Backend Development

Escape the if‑else Nightmare with Powerful Workflow Orchestration

The article explains how tangled if‑else branches in a business middle‑platform can be replaced by a flow‑engine and plugin‑extension approach, using the open‑source MemberClub project to demonstrate configuration, node definition, and execution mechanics that improve code isolation and extensibility.

JavaMemberClubOpen Source
0 likes · 11 min read
Escape the if‑else Nightmare with Powerful Workflow Orchestration
Top Architect
Top Architect
Jun 10, 2026 · Backend Development

Why Spring Boot Plugin Development Is a Game‑Changer

This article explains how Spring Boot’s plugin architecture—using SPI, custom configuration, and Spring Factories—enables modular, extensible services, demonstrates step‑by‑step implementations with code samples, and shows real‑world use cases for building flexible micro‑service components.

JavaMicroservicesModularization
0 likes · 22 min read
Why Spring Boot Plugin Development Is a Game‑Changer
Tech Ocean
Tech Ocean
Jun 10, 2026 · Artificial Intelligence

5 Agent Orchestration Patterns to Elevate Spring AI from Single‑Turn Q&A to Multi‑Step Decision Making

The article explains five concrete agent‑orchestration patterns—Chain, Routing, Parallelization, Orchestrator‑Workers, and Evaluator‑Optimizer—showing how to combine Spring AI's ChatClient with simple Java control flow to transform single‑turn interactions into controlled, multi‑step decision workflows, complete with code examples and guidance on when to use each pattern.

Artificial IntelligenceJavaWorkflow
0 likes · 8 min read
5 Agent Orchestration Patterns to Elevate Spring AI from Single‑Turn Q&A to Multi‑Step Decision Making
Tech Musings
Tech Musings
Jun 10, 2026 · Backend Development

Evolving RagFlow Text Upload: From Placeholder Files to Direct Temp‑File Upload

The article compares two Java‑based integration methods for sending pure‑text documents to RagFlow—first uploading an empty placeholder file then adding chunks, and later writing the text to a temporary file and uploading it directly—detailing implementation, pitfalls, and why the latter is preferred.

APIJavabackend
0 likes · 11 min read
Evolving RagFlow Text Upload: From Placeholder Files to Direct Temp‑File Upload
Architect's Guide
Architect's Guide
Jun 10, 2026 · Backend Development

Essential Java Libraries Every Senior Developer Should Know

This article compiles a curated list of 20 widely used Java libraries—covering logging, JSON processing, testing, utilities, HTTP, XML, Excel, bytecode manipulation, connection pooling, messaging, PDF, date‑time, collections, email, HTML parsing, cryptography, embedded databases, JDBC debugging, serialization, and networking—to help developers avoid reinventing the wheel and boost productivity.

JavaLibrariesLogging
0 likes · 12 min read
Essential Java Libraries Every Senior Developer Should Know
Coder Trainee
Coder Trainee
Jun 9, 2026 · Backend Development

Building Java AI Agents with Spring AI: A Hands‑On Guide

This article walks Java developers through using Spring AI to build AI agents, comparing it with Python's LangChain, detailing architecture, environment setup, prompt templates, tool integration, RAG implementation, production‑grade features, and a side‑by‑side feature comparison.

AI AgentJavaLangChain
0 likes · 17 min read
Building Java AI Agents with Spring AI: A Hands‑On Guide
Tech Ocean
Tech Ocean
Jun 9, 2026 · Backend Development

Enabling Large Language Models to Call Your Java Methods with Spring AI Tool Calling

This article explains how Spring AI's Tool Calling lets large language models overcome their inability to access real‑time or private data by invoking annotated Java methods, showing step‑by‑step code examples, parameter handling, and the execution flow that bridges model requests with actual method results.

Backend IntegrationFunction CallingJava
0 likes · 5 min read
Enabling Large Language Models to Call Your Java Methods with Spring AI Tool Calling
ITPUB
ITPUB
Jun 9, 2026 · Backend Development

How to Prevent Server Crashes from Concurrent Excel Exports with a Queue

The article explains why simultaneous Excel exports can overload a server, proposes a fixed‑size FIFO queue to serialize export tasks, and provides a complete Spring‑Boot implementation—including the ExportQueue, abstract export logic with EasyExcel, and a test controller—to demonstrate the queuing mechanism in action.

ConcurrencyEasyExcelExcel export
0 likes · 11 min read
How to Prevent Server Crashes from Concurrent Excel Exports with a Queue
Top Architect
Top Architect
Jun 9, 2026 · Backend Development

Master SpringBoot Excel Export with EasyExcel: A Complete Guide

This guide walks through integrating EasyExcel with Spring Boot, covering Maven setup, entity definition, utility class creation, basic and advanced export scenarios such as complex headers, cell merging, custom formatting, and large‑scale paging, plus common pitfalls like dependency conflicts and annotation misuse.

Data ExportEasyExcelExcel export
0 likes · 11 min read
Master SpringBoot Excel Export with EasyExcel: A Complete Guide
Tech Ocean
Tech Ocean
Jun 9, 2026 · Artificial Intelligence

Spring AI Day 11: Advanced Modular RAG – Query Rewriting, Compression, and Empty‑Context Fallback

The article examines the limitations of a naïve QuestionAnswerAdvisor RAG implementation, introduces Spring AI's RetrievalAugmentationAdvisor for modular RAG, and demonstrates how query rewriting, multi‑turn compression, and an empty‑context augmenter improve recall and prevent model refusals.

Contextual AugmentationJavaQuery Rewriting
0 likes · 6 min read
Spring AI Day 11: Advanced Modular RAG – Query Rewriting, Compression, and Empty‑Context Fallback
Java Architect Handbook
Java Architect Handbook
Jun 9, 2026 · Backend Development

What’s the Dubbo Service Call Process? A 10‑Step Deep Dive

The article breaks down a complete Dubbo RPC invocation into ten precise steps—five on the consumer side and five on the provider side—explaining each core component such as Proxy, Filter, Cluster, LoadBalance, Protocol, and Transport, and addresses common interview follow‑up questions about clustering, load balancing, and sync vs async calls.

DubboJavaMicroservices
0 likes · 13 min read
What’s the Dubbo Service Call Process? A 10‑Step Deep Dive
Java Backend Technology
Java Backend Technology
Jun 9, 2026 · Fundamentals

Turn a Laggy IntelliJ IDEA into a Fast IDE with Simple Tweaks

This article lists ten common IntelliJ IDEA pitfalls—from high CPU usage and Lombok errors to Maven download slowness and Git commit issues—and provides step‑by‑step configurations, memory tweaks, plugin settings, and .gitignore rules to make the IDE run smoothly for Java developers.

GitIDEIntelliJ IDEA
0 likes · 24 min read
Turn a Laggy IntelliJ IDEA into a Fast IDE with Simple Tweaks
Su San Talks Tech
Su San Talks Tech
Jun 9, 2026 · Artificial Intelligence

Zero‑Cost Unlimited‑Token Access to Qwen 3.6: A Step‑by‑Step Guide

This article explains how developers can bypass token‑cost barriers by using iFlytek’s MaaS platform to obtain free, unlimited‑token access to the Qwen 3.6‑35B‑A3B model, details the model’s MoE architecture and benchmark performance, and provides a complete Java integration tutorial with code samples and practical use‑case suggestions.

AIAPIJava
0 likes · 16 min read
Zero‑Cost Unlimited‑Token Access to Qwen 3.6: A Step‑by‑Step Guide
The Dominant Programmer
The Dominant Programmer
Jun 9, 2026 · Backend Development

Collect URLs and Async Convert to PDF for ZIP Download (Spring Boot + Feign)

An online education platform needs to batch‑download course materials from self‑hosted courses, partner APIs, and archived PDFs; the article details a Spring Boot service that aggregates URLs, signs them, distinguishes direct downloads, submits an asynchronous PDF conversion and ZIP packaging task via Feign, and returns a task ID for front‑end polling.

FeignJavaSpring Boot
0 likes · 15 min read
Collect URLs and Async Convert to PDF for ZIP Download (Spring Boot + Feign)
Java Architect Essentials
Java Architect Essentials
Jun 8, 2026 · Backend Development

How to Configure a ThreadPool to Send 10 Million SMS in One Hour (Java)

The article walks through calculating the required QPS for 10 million SMS in an hour, derives a precise ThreadPoolExecutor configuration (core 200, max 500, queue 5000, 60 s keep‑alive, CallerRunsPolicy), and provides complete Spring Boot code with production tips such as pagination, retry, idempotency and rate‑limiting.

ConcurrencyJavaPerformance
0 likes · 7 min read
How to Configure a ThreadPool to Send 10 Million SMS in One Hour (Java)
Top Architect
Top Architect
Jun 8, 2026 · Backend Development

From Hottest to Obsolete: A Critical Review of 13 Java Web Frameworks

The article evaluates 13 Java web frameworks across six objective dimensions—performance, ecosystem maturity, learning curve, development efficiency, enterprise adoption, and innovation—ranking them into five tiers and providing concrete data such as usage statistics, startup times, and memory footprints.

DropwizardHelidonJava
0 likes · 10 min read
From Hottest to Obsolete: A Critical Review of 13 Java Web Frameworks
IoT Full-Stack Technology
IoT Full-Stack Technology
Jun 8, 2026 · Artificial Intelligence

Spring AI 2.0 vs LangChain4j: Which Should You Choose?

This article compares Spring AI 2.0 and LangChain4j for integrating large language models into Java enterprise applications, examining their positioning, version alignment, programming models, RAG capabilities, tooling, observability, learning curves, and suitability for different team stacks to help you make an informed selection.

AI frameworksJavaLLM Integration
0 likes · 12 min read
Spring AI 2.0 vs LangChain4j: Which Should You Choose?
Java Architect Handbook
Java Architect Handbook
Jun 8, 2026 · Fundamentals

What’s the Relationship Between the JVM Runtime Constant Pool and the String Constant Pool?

This article explains the three Java constant pools—class file, runtime, and string—detailing their evolution from compilation to execution, their memory locations across JDK versions, how string literals are interned, code examples illustrating their behavior, common misconceptions, and typical interview follow‑up questions.

Constant PoolInterviewJVM
0 likes · 15 min read
What’s the Relationship Between the JVM Runtime Constant Pool and the String Constant Pool?
CodeNotes
CodeNotes
Jun 8, 2026 · Backend Development

Why Overriding equals Requires Overriding hashCode: An Interview‑Ready Guide

The article explains the contract between equals and hashCode in Java, shows what goes wrong when only one is overridden, demonstrates the correct implementation with Objects.equals and Objects.hash, covers IDE/Lombok generation, JPA entity nuances, inheritance pitfalls, records, and common anti‑patterns.

HashMapJPAJava
0 likes · 9 min read
Why Overriding equals Requires Overriding hashCode: An Interview‑Ready Guide
Architect's Guide
Architect's Guide
Jun 8, 2026 · Backend Development

Three Practical Data Masking Solutions That Really Work

This article walks through three common data‑masking approaches—SQL queries using string functions, a Java‑based "sensitive‑plus" plugin, and the mybatis‑mate‑sensitive‑jackson extension—showing configuration, code examples, and how each method masks phone numbers, ID cards and other personal fields.

JavaMyBatisSQL
0 likes · 10 min read
Three Practical Data Masking Solutions That Really Work
dbaplus Community
dbaplus Community
Jun 7, 2026 · Backend Development

Midnight Crash: The ‘Impossible’ MyBatis‑Plus Pitfalls That Can Break Production

The article catalogs six production‑ready pitfalls of MyBatis‑Plus—duplicate Snowflake IDs, batch‑insert disorder, enum storage errors, camel‑case mismatches, auto‑fill failures, and JSON field loss—explains their root causes with concrete examples and code, and provides practical solutions to keep the framework reliable in high‑concurrency environments.

Auto-fillBatch InsertEnum Mapping
0 likes · 16 min read
Midnight Crash: The ‘Impossible’ MyBatis‑Plus Pitfalls That Can Break Production
The Dominant Programmer
The Dominant Programmer
Jun 7, 2026 · Backend Development

Executing Asynchronous Operations After Spring Transaction Commit: Principles, Pitfalls, and Best Practices

The article explains why sending messages before a Spring transaction commits can cause data inconsistency, and demonstrates how to reliably execute asynchronous actions such as MQ notifications after a successful commit using TransactionSynchronization, custom collectors, and @TransactionalEventListener, while highlighting common pitfalls and mitigation strategies.

AsynchronousJavaMQ
0 likes · 16 min read
Executing Asynchronous Operations After Spring Transaction Commit: Principles, Pitfalls, and Best Practices
java1234
java1234
Jun 7, 2026 · Fundamentals

Master Java 16’s Record Feature in 10 Minutes

This tutorial explains Java 16’s record feature—a concise way to define immutable data carriers—by comparing it with traditional classes, showing the boilerplate it eliminates, detailing the automatically generated methods, providing hands‑on code examples, and outlining important usage considerations.

Boilerplate ReductionImmutable DataJava
0 likes · 7 min read
Master Java 16’s Record Feature in 10 Minutes
CodeNotes
CodeNotes
Jun 7, 2026 · Fundamentals

Mastering Java Strings: When to Use equals vs == and Common Pitfalls

Java's String class is immutable and stored in a constant pool; the article explains the difference between == and equals, demonstrates common methods for inspection, transformation, splitting, and conversion, and shows best practices for concatenation with StringBuilder, thread‑safe StringBuffer, and newer utilities like join, repeat, format, and text blocks.

Equals vs ==JavaJava 8
0 likes · 10 min read
Mastering Java Strings: When to Use equals vs == and Common Pitfalls
The Dominant Programmer
The Dominant Programmer
Jun 6, 2026 · Backend Development

Business Trace Logging Design Pattern: From Theory to Practice

The article explains a structured business‑trace logging pattern that records each critical step of a workflow as a node, stores logs in a dedicated MySQL database, aggregates them by a business number, and presents them in a sortable, color‑coded front‑end for both developers and business users.

JavaMySQLRocketMQ
0 likes · 15 min read
Business Trace Logging Design Pattern: From Theory to Practice
The Dominant Programmer
The Dominant Programmer
Jun 6, 2026 · Backend Development

Mockito Unit Testing: A Complete Guide to Testing Java Service Layers

This article explains unit testing fundamentals, compares unit and integration tests, introduces Mockito's core annotations and APIs, walks through a full order‑resend example with detailed test cases, and covers best‑practice methodologies, advanced techniques, common pitfalls, naming conventions, and how to run the tests.

Given-When-ThenJUnit5Java
0 likes · 21 min read
Mockito Unit Testing: A Complete Guide to Testing Java Service Layers
Coder Trainee
Coder Trainee
Jun 6, 2026 · Artificial Intelligence

What Is an AI Agent? From Large Language Models to Autonomous Agents

This article explains why large language models are powerful yet limited, defines AI agents as autonomous systems that combine a model, memory, tools, and actions, details the ReAct reasoning‑and‑acting loop, provides a 30‑line Python LangChain example and a Java Spring AI implementation, and outlines five practical use‑case scenarios and the roadmap for the series.

AI AgentJavaLangChain
0 likes · 10 min read
What Is an AI Agent? From Large Language Models to Autonomous Agents
Tech Ocean
Tech Ocean
Jun 6, 2026 · Artificial Intelligence

Day 7 of Spring AI Series: How Advisors Form a Filter Chain for AI Applications

This article explains Spring AI Advisors as interceptors that can modify requests and responses in the LLM call chain, demonstrates building a custom logging Advisor with code examples, shows how ordering controls execution, and reviews the built‑in Advisors for memory, RAG, logging, and safety.

AdvisorChatClientJava
0 likes · 5 min read
Day 7 of Spring AI Series: How Advisors Form a Filter Chain for AI Applications
Tech Ocean
Tech Ocean
Jun 6, 2026 · Artificial Intelligence

Spring AI Day 5: Enabling a Multimodal ChatClient to Process Text and Images

This article explains how Spring AI’s Media API lets a ChatClient handle both textual prompts and image inputs, shows code examples for attaching images, discusses required visual models, and outlines practical use cases such as OCR, chart analysis, and image moderation.

AI modelsChatClientJava
0 likes · 5 min read
Spring AI Day 5: Enabling a Multimodal ChatClient to Process Text and Images
Tech Ocean
Tech Ocean
Jun 6, 2026 · Artificial Intelligence

Spring AI Day 4: Get LLMs to Return Java Objects Directly, No Manual Parsing

The article explains how Spring AI’s .entity() method lets developers obtain structured Java objects such as POJOs, lists, enums, and response entities directly from LLM outputs, eliminating the need for manual JSON parsing and handling generic‑type issues with ParameterizedTypeReference.

JavaLLMParameterizedTypeReference
0 likes · 5 min read
Spring AI Day 4: Get LLMs to Return Java Objects Directly, No Manual Parsing
Java Architect Handbook
Java Architect Handbook
Jun 6, 2026 · Backend Development

Spring Cloud LoadBalancer vs Ribbon: Key Differences and Why Ribbon Was Replaced

The article explains the functional and architectural differences between Spring Cloud LoadBalancer and Netflix Ribbon, why Ribbon entered maintenance mode and was replaced, outlines migration steps, compares configuration, caching, reactive support, and provides code examples and common interview questions for Java developers.

Client-side load balancingJavaLoadBalancer
0 likes · 12 min read
Spring Cloud LoadBalancer vs Ribbon: Key Differences and Why Ribbon Was Replaced
Tech Ocean
Tech Ocean
Jun 6, 2026 · Artificial Intelligence

Spring AI Day 3: Eliminating Hard‑Coded Prompts with Templates and Role Settings

The article explains how to move beyond static prompts in Spring AI by using System and User message roles, PromptTemplate placeholders with .param(), defaultSystem configuration for reusable role definitions, and independent PromptTemplate usage, providing concrete code examples for each technique.

ChatClientJavaPrompt Engineering
0 likes · 5 min read
Spring AI Day 3: Eliminating Hard‑Coded Prompts with Templates and Role Settings
Tech Ocean
Tech Ocean
Jun 6, 2026 · Artificial Intelligence

Mastering Spring AI ChatClient: call vs. stream for typewriter‑like streaming

This article explains how Spring AI's ChatClient serves as a high‑level façade over ChatModel, compares the synchronous call() method with the streaming stream() method, demonstrates retrieving plain text, full responses, or structured entities, and shows how to override model parameters such as temperature on a per‑request basis.

AI integrationChatClientChatModel
0 likes · 7 min read
Mastering Spring AI ChatClient: call vs. stream for typewriter‑like streaming
Java Architect Essentials
Java Architect Essentials
Jun 5, 2026 · Backend Development

Zero‑Downtime SpringBoot Updates: Swapping JARs Without Stopping the Service

The article explains how to achieve zero‑downtime code updates for SpringBoot applications by detecting port usage, launching a new instance on an alternate port, swapping the servlet container back to the original port, and terminating the old process, with a complete code example and a live demo showing sub‑second interruption.

Embedded ServerJavaServlet
0 likes · 9 min read
Zero‑Downtime SpringBoot Updates: Swapping JARs Without Stopping the Service
Cloud Architecture
Cloud Architecture
Jun 5, 2026 · Backend Development

RocketMQ 4.x Deep Dive: Send Mechanics, Thread Model & High‑Concurrency

This article explains why a RocketMQ producer is more than a simple send API, detailing its role in system throughput, consistency and fault isolation, and walks through sending principles, thread models, high‑concurrency design, retry strategies, back‑pressure mechanisms, outbox integration and production‑grade monitoring.

JavaMessage QueueProducer
0 likes · 54 min read
RocketMQ 4.x Deep Dive: Send Mechanics, Thread Model & High‑Concurrency
Tech Ocean
Tech Ocean
Jun 5, 2026 · Artificial Intelligence

Run Your First Spring AI 2.0 Conversation in 5 Minutes

This article introduces Spring AI 2.0, explains why Java developers should adopt it, and walks through setting up a Spring Boot 3.x project with JDK 17, adding the DeepSeek starter, configuring properties, writing a simple ChatController, and running a curl request to see the model’s reply.

AI integrationChatClientDeepSeek
0 likes · 9 min read
Run Your First Spring AI 2.0 Conversation in 5 Minutes
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 5, 2026 · Backend Development

5 Advanced Java Concurrency Tricks That Can Triple Your Throughput

This article walks through five proven Java 21 concurrency tuning techniques—including non‑blocking CompletableFuture pipelines, StampedLock for read‑heavy workloads, bounded queues with CallerRunsPolicy, atomic computeIfAbsent usage in ConcurrentHashMap, and correct virtual‑thread patterns—showing how each can dramatically improve throughput and stability in high‑load systems.

CompletableFutureConcurrencyConcurrentHashMap
0 likes · 9 min read
5 Advanced Java Concurrency Tricks That Can Triple Your Throughput
Su San Talks Tech
Su San Talks Tech
Jun 5, 2026 · Backend Development

A Comprehensive Guide to Java Tech Stack Skills for AI Agents

This guide curates essential AI Agent Skills for the Java ecosystem, covering backend tools like Spring Boot, MyBatis‑Plus, and Redis, frontend frameworks such as Vue and React, installation commands, custom Skill examples, and recommended full‑stack workflows to boost project productivity.

AI Agent SkillsBackend DevelopmentJava
0 likes · 12 min read
A Comprehensive Guide to Java Tech Stack Skills for AI Agents
samdeepthink
samdeepthink
Jun 4, 2026 · Backend Development

Design and Implementation of an Extension‑Point Mechanism for SaaS Multi‑Tenant Business Differentiation

The article explains how an Extension‑Point mechanism can cleanly isolate tenant‑specific logic in SaaS systems by defining variation interfaces, providing per‑tenant implementations annotated with @Extension, and routing calls at runtime using hierarchical bizCode matching, avoiding tangled if‑else or inheritance explosion.

Design PatternExtension PointJava
0 likes · 11 min read
Design and Implementation of an Extension‑Point Mechanism for SaaS Multi‑Tenant Business Differentiation
Alibaba Cloud Native
Alibaba Cloud Native
Jun 4, 2026 · Artificial Intelligence

AgentScope Java 2.0: A Distributed, Enterprise‑Grade Foundation for Intelligent Agents

AgentScope Java 2.0 introduces distributed session handling, multi‑tenant isolation, an abstract filesystem, robust model fallback, structured context management, event streaming, a permission system, and middleware hooks, providing a cloud‑native, enterprise‑ready platform for building stable, long‑running AI agents.

AI AgentsAgentScopeJava
0 likes · 17 min read
AgentScope Java 2.0: A Distributed, Enterprise‑Grade Foundation for Intelligent Agents
Java Architect Handbook
Java Architect Handbook
Jun 4, 2026 · Backend Development

Zero‑Downtime Code Updates in Spring Boot by Sharing a Single Port

The article explains how to update a Spring Boot application without stopping the service by letting two processes share the same port, detailing the underlying Tomcat and ServletContainerInitializer mechanisms, the step‑by‑step implementation, and a demo that shows sub‑second downtime during hot swaps.

JavaServletSpringBoot
0 likes · 10 min read
Zero‑Downtime Code Updates in Spring Boot by Sharing a Single Port
Java Backend Technology
Java Backend Technology
Jun 4, 2026 · Backend Development

Boost CRUD Development Efficiency with MyBatisPlus Pro

MyBatisPlus Pro extends MyBatisPlus by providing a BaseController that auto‑generates CRUD, pagination, and conditional queries, dramatically cutting repetitive code; the article walks through its architecture, quick‑start steps, deep technical mechanisms, pros and cons, and practical usage guidelines.

CRUDJavaMybatisPlus
0 likes · 21 min read
Boost CRUD Development Efficiency with MyBatisPlus Pro
Java Tech Workshop
Java Tech Workshop
Jun 4, 2026 · Backend Development

Understanding SpringBoot Two‑Level Caching: MyBatis vs Application‑Level Cache

The article explains how layered caching in Java back‑ends—combining MyBatis first‑ and second‑level caches with a service‑layer Caffeine + Redis cache—affects cache granularity, consistency, distribution, and performance, and provides concrete configuration examples, code snippets, and best‑practice guidelines.

CacheCaffeineJava
0 likes · 16 min read
Understanding SpringBoot Two‑Level Caching: MyBatis vs Application‑Level Cache
The Dominant Programmer
The Dominant Programmer
Jun 3, 2026 · Backend Development

Building a Minimal Spring AI Tool Chain for Multi-Tool Calls

This tutorial demonstrates how to integrate Spring AI with Ollama, define @Tool‑annotated weather and translation utilities, register them for automatic chaining, and let a large language model answer queries like “fetch Beijing weather and reply in English” using a concise end‑to‑end example.

JavaOllamaSpring AI
0 likes · 8 min read
Building a Minimal Spring AI Tool Chain for Multi-Tool Calls
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 3, 2026 · Backend Development

15 Golden Rules for High‑Performance, Maintainable Java Code

This article presents fifteen concrete Java performance‑optimization rules—from readable code and proper data structures to efficient string handling, database access, caching, multithreading, reflection, JVM tuning, and memory management—each illustrated with before/after code examples and practical advice.

ConcurrencyJVMJava
0 likes · 14 min read
15 Golden Rules for High‑Performance, Maintainable Java Code
IoT Full-Stack Technology
IoT Full-Stack Technology
Jun 3, 2026 · Backend Development

Can We Achieve Seamless Account Interoperability Across Multiple Company Systems?

The article examines the challenges of multiple corporate systems requiring separate logins, explains traditional session mechanisms and their limitations in clustered environments, compares session replication versus centralized storage, and presents a complete Java Spring implementation of CAS‑based single sign‑on with code samples and a discussion of differences from OAuth2.

AuthenticationCASJava
0 likes · 13 min read
Can We Achieve Seamless Account Interoperability Across Multiple Company Systems?
Coder Trainee
Coder Trainee
Jun 3, 2026 · Cloud Native

Unified Messaging with Spring Cloud Stream: One Codebase for Multiple MQs

This article demonstrates how Spring Cloud Stream provides a unified programming model that decouples business logic from the underlying message broker, allowing a single codebase to work with RocketMQ, Kafka, or RabbitMQ by only changing configuration, and walks through project structure, implementation, conditional routing, MQ switching, testing, and common pitfalls.

JavaKafkaMessage-driven
0 likes · 19 min read
Unified Messaging with Spring Cloud Stream: One Codebase for Multiple MQs
Cloud Architecture
Cloud Architecture
Jun 2, 2026 · Backend Development

Deep Dive into OpenFeign and Spring Cloud LoadBalancer: From Declarative Calls to Traffic Governance Core

This article provides a comprehensive source‑code analysis of OpenFeign and Spring Cloud LoadBalancer, explaining how declarative client calls are turned into HTTP requests, why misconfigurations cause production incidents, and offering practical guidance on registration, request‑template building, instance selection, connection‑pool tuning, retries, gray releases, observability and when to evolve beyond Feign.

JavaMicroservicesOpenFeign
0 likes · 33 min read
Deep Dive into OpenFeign and Spring Cloud LoadBalancer: From Declarative Calls to Traffic Governance Core
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 2, 2026 · Backend Development

Simplify Resource Cleanup in JUnit with the New @AutoClose Annotation

The article introduces JUnit's @AutoClose annotation (added in version 5.11), compares the traditional @BeforeEach/@AfterEach cleanup pattern with the annotation's automatic resource closing, and demonstrates its use across file I/O, database connections, HTTP clients, streams, and custom AutoCloseable classes, including warning behavior for null fields.

@AutoCloseJUnitJUnit5
0 likes · 8 min read
Simplify Resource Cleanup in JUnit with the New @AutoClose Annotation
CodeNotes
CodeNotes
Jun 2, 2026 · Backend Development

Standardizing Spring Boot API Responses to Eliminate Inconsistent Interfaces

The article explains why unifying API return formats in Spring Boot prevents front‑end confusion, introduces a simple Result wrapper with code/message/data, shows manual and automatic (ResponseBodyAdvice) usage, and offers practical tips for clean, predictable backend contracts.

API responseJavaResponseBodyAdvice
0 likes · 5 min read
Standardizing Spring Boot API Responses to Eliminate Inconsistent Interfaces
Su San Talks Tech
Su San Talks Tech
Jun 2, 2026 · Backend Development

MybatisPlus Pro: Supercharging CRUD Development Efficiency

This article analyzes MybatisPlus Pro, explaining how it eliminates repetitive CRUD code in MyBatis‑Plus projects by providing a BaseController and utility classes that auto‑generate service and controller layers, while also detailing its internal mechanisms, advantages, drawbacks, suitable scenarios, and common pitfalls.

CRUDJavaMyBatis
0 likes · 22 min read
MybatisPlus Pro: Supercharging CRUD Development Efficiency