Tagged articles
5000 articles
Page 4 of 50
Architect's Ambition
Architect's Ambition
Mar 19, 2026 · Artificial Intelligence

Fix AI Agent Tool-Calling Chaos with Prompt Engineering and MCP Protocol

The article explains how poorly designed prompts cause AI agents to invoke unnecessary or incorrect tools, and shows how a structured prompt template combined with the Model Context Protocol (MCP) and three safety measures can raise tool‑calling accuracy from about 30% to over 95%.

AI AgentJavaMCP protocol
0 likes · 13 min read
Fix AI Agent Tool-Calling Chaos with Prompt Engineering and MCP Protocol
Sohu Tech Products
Sohu Tech Products
Mar 19, 2026 · Backend Development

Boost Java Backend Efficiency with Qoder AI Plugin in JetBrains IDE

This guide demonstrates how JetBrains IDE users can integrate the Qoder AI plugin to accelerate backend development, covering installation, configuration, performance tuning of deep‑pagination queries, and safe incremental refactoring of legacy Java code with detailed code examples and results.

AIIDEJava
0 likes · 19 min read
Boost Java Backend Efficiency with Qoder AI Plugin in JetBrains IDE
Radish, Keep Going!
Radish, Keep Going!
Mar 19, 2026 · Frontend Development

From Birth to Obsolescence: The 30‑Year Journey of Java Applets

This article chronicles the rise and fall of Java Applets from their 1995 debut, through their golden era and technical limitations, to their eventual removal from browsers and the JDK, and shows how WebAssembly inherits the original vision of high‑performance compiled code in the browser.

AppletFrontend DevelopmentJava
0 likes · 10 min read
From Birth to Obsolescence: The 30‑Year Journey of Java Applets
Architect's Guide
Architect's Guide
Mar 19, 2026 · Backend Development

Boost API Speed 10× with a Three‑Level Cache Pyramid in Spring Boot 3

This article explains why adding Redis alone may still be slow, introduces a three‑level cache pyramid (Caffeine L1, Redis L2, DB L3) built with Spring Boot 3, and provides complete configuration, code, warm‑up, monitoring, and benchmark results that reduce response time from 28 ms to 2 ms while cutting CPU usage by 35%.

CacheCaffeineJava
0 likes · 9 min read
Boost API Speed 10× with a Three‑Level Cache Pyramid in Spring Boot 3
Su San Talks Tech
Su San Talks Tech
Mar 19, 2026 · Backend Development

Unlock Ultimate Spring Support in IDEA Community with the Free Spring Explyt Plugin

This article introduces Spring Explyt, a free open‑source IntelliJ IDEA Community plugin that adds full Spring development features—including accurate bean detection, advanced code completion, endpoint management, built‑in HTTP client, and enhanced debugging—by using a lightweight runtime analysis, and provides installation, usage steps, and a feature comparison with IDEA Ultimate.

DevelopmentIntelliJ IDEAJava
0 likes · 6 min read
Unlock Ultimate Spring Support in IDEA Community with the Free Spring Explyt Plugin
SpringMeng
SpringMeng
Mar 19, 2026 · Backend Development

Why kill -9 Is Wrong: A Graceful Shutdown Approach for Microservices

The article explains how to replace the blunt kill -9 command with a coordinated graceful shutdown process for Spring Cloud microservices, covering signal handling, Eureka cache nuances, actuator endpoints, Spring Boot 2.3 settings, custom shutdown endpoints, and strategies for Kafka, scheduled jobs, thread pools, and long‑running loops.

ActuatorGraceful ShutdownJava
0 likes · 16 min read
Why kill -9 Is Wrong: A Graceful Shutdown Approach for Microservices
Lisa Notes
Lisa Notes
Mar 19, 2026 · Fundamentals

Understanding Java Arrays: Concepts, Features, and Usage

This note explains why Java introduces arrays, defines arrays as collections of same‑type variables, demonstrates the limitation of using individual variables for many items, and outlines six key characteristics of Java arrays, including fixed length, zero‑based indexing, and default values.

ArraysData StructuresJava
0 likes · 5 min read
Understanding Java Arrays: Concepts, Features, and Usage
21CTO
21CTO
Mar 18, 2026 · Fundamentals

Java 26 Unveiled: Key JDK Features and the New Oracle Java Verified Portfolio

Oracle announced the GA release of Java 26/JDK 26, detailing ten JEP‑driven enhancements, additional low‑level improvements, expanded security measures, updated Unicode support, JVM performance tweaks, and the introduction of the Oracle Java Verified Portfolio that now covers JavaFX, Helidon and VS Code extensions.

HelidonJEPJava
0 likes · 6 min read
Java 26 Unveiled: Key JDK Features and the New Oracle Java Verified Portfolio
Top Architect
Top Architect
Mar 18, 2026 · Backend Development

Boost Your Java Projects with Hutool: Essential Utilities and Real‑World Examples

This article introduces Hutool, a comprehensive Java utility library, outlines its main modules such as SecureUtil, HtmlUtil, and CronUtil, provides code snippets for common tasks like password hashing, HTML escaping, and scheduling, and shares practical tips for integrating these tools into applications.

CronUtilHtmlUtilHutool
0 likes · 7 min read
Boost Your Java Projects with Hutool: Essential Utilities and Real‑World Examples
macrozheng
macrozheng
Mar 18, 2026 · Backend Development

Unlock Ultimate Spring Support in Free IDEA with Spring Explyt Plugin

This guide introduces Spring Explyt, an open‑source IntelliJ IDEA Community plugin that brings full‑featured Spring support—including precise bean detection, advanced code completion, endpoint tools, and built‑in HTTP client—to the free IDE, with installation steps, usage tips, and a feature comparison.

IDEA PluginIntelliJ IDEAJava
0 likes · 6 min read
Unlock Ultimate Spring Support in Free IDEA with Spring Explyt Plugin
Coder Trainee
Coder Trainee
Mar 18, 2026 · Operations

Zipkin Basics and Deploying Its Server on Linux

This guide explains Zipkin’s core components—Collector, Storage, RESTful API, and Web UI—then walks through downloading the executable jar, placing it on a Linux server, creating start and stop shell scripts with proper permissions, and finally launching the Zipkin server and accessing its web interface.

DeploymentJavaLinux
0 likes · 5 min read
Zipkin Basics and Deploying Its Server on Linux
JavaGuide
JavaGuide
Mar 18, 2026 · Artificial Intelligence

Why Build Your Own Claude Code Agent? A Step‑by‑Step Walkthrough

This article explores the Learn Claude Code website, breaking down the universal agent loop into twelve incremental versions, demonstrating language‑agnostic implementations in Python and Java, and detailing progressive capabilities—from basic tool integration to memory compression, concurrency, and multi‑agent collaboration.

AI AgentAgent LoopClaude
0 likes · 9 min read
Why Build Your Own Claude Code Agent? A Step‑by‑Step Walkthrough
Lisa Notes
Lisa Notes
Mar 18, 2026 · Fundamentals

Java Operators and Expressions: A Beginner’s Guide from Scratch

This article provides a comprehensive walkthrough of Java's operators and expressions, covering arithmetic, assignment, increment/decrement, relational, logical, bitwise, and ternary operators, their syntax, evaluation rules, precedence, and practical code examples to help beginners master Java fundamentals.

Javaexpressionsoperators
0 likes · 20 min read
Java Operators and Expressions: A Beginner’s Guide from Scratch
Coder Circle
Coder Circle
Mar 17, 2026 · Industry Insights

After a Decade of Java, Why the Programmer Era Is Shifting

The article analyzes how AI is now writing code, compressing development cycles from half a day to minutes, reshaping programmer roles through three historical value shifts, highlighting new AI‑centric responsibilities, and offering a concrete learning path for Java developers to thrive in the AI era.

AI EngineeringAI PlatformsArtificial Intelligence
0 likes · 8 min read
After a Decade of Java, Why the Programmer Era Is Shifting
Top Architect
Top Architect
Mar 17, 2026 · Backend Development

Why Replacing MyBatis with MyBatis‑Plus Can Break Your DateTime Handling

A newcomer replaced MyBatis with MyBatis‑Plus in an old MySQL‑based project, encountered a "Conversion not supported for type java.time.LocalDateTime" error, traced it to MyBatis 3.5.1 dropping built‑in type handling and an outdated mysql‑connector‑java driver, and resolved it by upgrading the driver while also fixing a related validation bug that caused production failures.

DatabaseDebuggingJava
0 likes · 10 min read
Why Replacing MyBatis with MyBatis‑Plus Can Break Your DateTime Handling
JD Cloud Developers
JD Cloud Developers
Mar 17, 2026 · Backend Development

How to Build a MyBatis Plugin to Throttle Burst SQL Traffic and Protect Your Database

This article explores the challenges of sudden traffic spikes that overload applications and databases, and presents a step‑by‑step design, implementation, and optimization of a MyBatis plugin that intercepts SQL, applies fingerprint‑based rate limiting, and integrates with Joycode for rapid development and testing.

Database protectionJavaMyBatis
0 likes · 10 min read
How to Build a MyBatis Plugin to Throttle Burst SQL Traffic and Protect Your Database
macrozheng
macrozheng
Mar 17, 2026 · Backend Development

How Spring 7.0.4 Fixes Deadlock Bugs and Boosts Startup Speed by Up to 50%

Spring Framework 7.0.4 resolves a rare deadlock caused by concurrent shutdown paths in Kubernetes, introduces dozens of bug fixes and performance tweaks—including faster request routing, annotation caching, and validation refactoring—that together can cut startup time by 30‑50% depending on the JDK version.

Bug FixJavaSpring Framework
0 likes · 13 min read
How Spring 7.0.4 Fixes Deadlock Bugs and Boosts Startup Speed by Up to 50%
java1234
java1234
Mar 17, 2026 · Backend Development

Understanding the Core Mechanism Behind Spring Event Listening

The article explains Spring’s event-driven model, detailing how ApplicationEventPublisher, ApplicationListener, and ApplicationEventMulticaster work together to publish, multicast, and handle events, and provides code examples for defining custom events, implementing listeners via interfaces or @EventListener annotations, and configuring asynchronous handling.

ApplicationEventPublisherEventListenerJava
0 likes · 6 min read
Understanding the Core Mechanism Behind Spring Event Listening
Java Web Project
Java Web Project
Mar 17, 2026 · Fundamentals

Why the String Constructor Makes BigDecimal Precise While Double Fails

This article explains how Java's BigDecimal class provides exact arithmetic for numbers beyond double's 16‑digit limit, demonstrates the pitfalls of using the double constructor with concrete examples, and guides developers through constructors, common methods, formatting, exception handling, and a utility class for high‑precision calculations.

ArithmeticBigDecimalJava
0 likes · 27 min read
Why the String Constructor Makes BigDecimal Precise While Double Fails
Lisa Notes
Lisa Notes
Mar 17, 2026 · Fundamentals

Java Basics: Understanding Primitive Data Types from Scratch

This article explains Java's primitive data types—including integer, floating‑point, character, and boolean types—covers their memory sizes, value ranges, literal syntax, automatic and explicit type conversions, and provides concrete code examples and tables for reference.

IntegerJavaType Conversion
0 likes · 16 min read
Java Basics: Understanding Primitive Data Types from Scratch
Senior Tony
Senior Tony
Mar 16, 2026 · Backend Development

Prioritize Max Threads Before Queue in Java ThreadPool – Interview‑Ready Trick

This guide explains the default Java ThreadPoolExecutor workflow, identifies why interview questions may require launching maximum threads before queuing tasks, and presents a concise two‑pool plus custom rejection‑policy solution that satisfies the requirement without writing a custom thread pool from scratch.

ExecutorInterviewJava
0 likes · 5 min read
Prioritize Max Threads Before Queue in Java ThreadPool – Interview‑Ready Trick
Java Architect Handbook
Java Architect Handbook
Mar 16, 2026 · Backend Development

Cookie vs Session vs Token: Master Java Authentication for Interviews

This guide outlines interview focus points, core definitions, and deep analysis of Cookie, Session, and Token (JWT), compares their storage, security, scalability, and cross‑origin support, and provides high‑frequency follow‑up questions, common variants, memory mnemonics, and selection principles for Java authentication.

AuthenticationCookieInterview
0 likes · 15 min read
Cookie vs Session vs Token: Master Java Authentication for Interviews
Huolala Tech
Huolala Tech
Mar 16, 2026 · Backend Development

How Lalamove Cut 30% of Dead Code: A Practical Code‑Slimming Playbook

This article details Lalamove's 2025 "Big Cleanup" initiative that identified and removed over 30% of dead Java code and more than 100 obsolete DB fields, describing the tools, SA plugin, BigClean scanner, MyBatis interceptor, and quality‑assurance strategies used to ensure safe, efficient code slimming.

Javabackendcode cleanup
0 likes · 13 min read
How Lalamove Cut 30% of Dead Code: A Practical Code‑Slimming Playbook
Lisa Notes
Lisa Notes
Mar 16, 2026 · Fundamentals

Java Basics: Variables and Constants Explained from Scratch

This note introduces Java constants and variables, covering their definitions, naming conventions, declaration syntax, initialization rules, multiple declarations, and how constants differ from mutable variables through concrete code examples.

ConstantsJavaProgramming Basics
0 likes · 7 min read
Java Basics: Variables and Constants Explained from Scratch
java1234
java1234
Mar 15, 2026 · Backend Development

BeanFactory vs ApplicationContext in Spring: Key Differences Explained

This article compares Spring's BeanFactory and ApplicationContext, detailing their roles, loading strategies, feature sets, code examples, and recommended usage scenarios, helping developers choose the appropriate container for their projects.

BeanFactoryIoCJava
0 likes · 6 min read
BeanFactory vs ApplicationContext in Spring: Key Differences Explained
Lisa Notes
Lisa Notes
Mar 15, 2026 · Fundamentals

Java Fundamentals: A Beginner’s Guide to Identifiers and Keywords

This note explains Java identifiers—allowed characters, first‑character rules, valid and invalid examples—lists all language keywords that cannot be reused as names, and outlines practical naming conventions for classes, methods, constants, and packages to improve code readability.

IdentifiersJavaProgramming Basics
0 likes · 6 min read
Java Fundamentals: A Beginner’s Guide to Identifiers and Keywords
Lisa Notes
Lisa Notes
Mar 14, 2026 · Fundamentals

How to Build Your First Java Application from Scratch

This tutorial walks you through installing the JDK, creating a HelloJava.java source file with Notepad, compiling it using javac, running it with the java interpreter, and explains the basic structure, comments, class definition, and main method of a Java program.

CommandLineHelloWorldJDK
0 likes · 12 min read
How to Build Your First Java Application from Scratch
Java Architect Handbook
Java Architect Handbook
Mar 13, 2026 · Backend Development

Boost Spring Boot Startup with Spring Data AOT Repositories

Spring Data AOT (Ahead‑of‑Time) repositories move reflection, method‑name parsing, JPQL generation and proxy creation from runtime to build time, dramatically speeding up Spring Boot 4 application startup, reducing memory usage, and surfacing configuration errors early in the compilation phase.

AoTJavaStartup Time
0 likes · 8 min read
Boost Spring Boot Startup with Spring Data AOT Repositories
java1234
java1234
Mar 13, 2026 · Backend Development

JEnv: A Next‑Gen Java Environment Manager that Simplifies Multi‑Version Management

JEnv tackles the long‑standing pain of juggling multiple Java versions by delivering sub‑second scanning (400 ms on a full‑depth scan), a concurrent Dispatcher‑Worker engine, smart pre‑filtering, cross‑platform support, themed terminals, real‑time statistics, and a modular architecture, all demonstrated with concrete benchmarks and usage scenarios.

CLIJEnvJava
0 likes · 9 min read
JEnv: A Next‑Gen Java Environment Manager that Simplifies Multi‑Version Management
Lisa Notes
Lisa Notes
Mar 13, 2026 · Fundamentals

How to Set Up a Java Development Environment from Scratch

This guide walks through installing the JDK, configuring JAVA_HOME, PATH and CLASSPATH on Windows, and verifying the setup, showing that only the JDK and a basic text editor are needed to write and run your first Java program.

JDKJavaWindows
0 likes · 9 min read
How to Set Up a Java Development Environment from Scratch
Lisa Notes
Lisa Notes
Mar 12, 2026 · Fundamentals

Java Language and Platform: A Beginner’s Guide to Write Once, Run Anywhere

The article explains how Java source files are compiled into bytecode, run on the JVM across Windows, Linux, macOS, and Solaris, and describes the two parts of the Java platform—the virtual machine and the API—highlighting why Java’s “write once, run anywhere” model suits distributed, object‑oriented development.

APIJVMJava
0 likes · 5 min read
Java Language and Platform: A Beginner’s Guide to Write Once, Run Anywhere
MeowKitty Programming
MeowKitty Programming
Mar 10, 2026 · Industry Insights

Why Java Remains the Undying Choice for Enterprise Development

The article analyzes Java's enduring dominance in enterprise software by examining its cross‑platform runtime, extensive ecosystem, continuous language and runtime innovations, performance and security breakthroughs, and the resulting cost, stability, and talent advantages that keep 90% of Fortune 500 companies invested.

Cloud NativeEnterprise DevelopmentJVM
0 likes · 8 min read
Why Java Remains the Undying Choice for Enterprise Development
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Mar 10, 2026 · Backend Development

Implement Multi-Factor Authentication in Spring Boot 3 with One‑Time Tokens

This guide explains how to add MFA to a Spring Boot 3 application using password plus one‑time token authentication, covering the theory of MFA factors, required dependencies, API definitions, security configuration, token‑generation handling, custom login pages, and the complete verification flow with code snippets and screenshots.

JavaMFASpring Security
0 likes · 10 min read
Implement Multi-Factor Authentication in Spring Boot 3 with One‑Time Tokens
java1234
java1234
Mar 8, 2026 · Backend Development

How to Build a Custom MyBatis Plugin: Step-by-Step Guide

This article explains the MyBatis plugin mechanism, walks through implementing the Interceptor interface, configuring the plugin in mybatis-config.xml, provides a complete code example, and outlines common use cases such as SQL logging, performance monitoring, permission control, and automatic field filling.

InterceptorJavaMyBatis
0 likes · 6 min read
How to Build a Custom MyBatis Plugin: Step-by-Step Guide
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Mar 7, 2026 · Backend Development

Mastering Resource Loading in Spring Boot 3: From @Value to ResourcePatternResolver

This guide explains how to load files in Spring Boot 3 using the Resource abstraction, covering classpath, filesystem, and URL prefixes, @Value injection, direct Resource instantiation, dynamic loading with ResourceLoader, and bulk loading with ResourcePatternResolver, plus common pitfalls and best‑practice code examples.

JavaSpring Frameworkbackend-development
0 likes · 11 min read
Mastering Resource Loading in Spring Boot 3: From @Value to ResourcePatternResolver
Coder Trainee
Coder Trainee
Mar 7, 2026 · Backend Development

Why @Data and @Builder Conflict in Lombok: Avoid This Common Pitfall

When @Data and @Builder are used together on a Lombok‑annotated class, the generated code can lose getters, setters, and the no‑argument constructor, leading to compilation failures; the article explains the cause and shows how to fix it with @NoArgsConstructor and @RequiredArgsConstructor.

@DataBuilderJava
0 likes · 4 min read
Why @Data and @Builder Conflict in Lombok: Avoid This Common Pitfall
SpringMeng
SpringMeng
Mar 7, 2026 · Artificial Intelligence

LangChain4j vs Spring AI: Which Java AI Framework Is Right for Your Project?

The article compares LangChain4j and Spring AI across design philosophy, core features, ecosystem integration, community maturity, and learning curve, providing concrete code examples, a feature‑richness matrix, and practical selection guidelines to help Java developers choose the most suitable AI framework for their needs.

AI frameworksJavaLangChain4j
0 likes · 15 min read
LangChain4j vs Spring AI: Which Java AI Framework Is Right for Your Project?
Java Web Project
Java Web Project
Mar 7, 2026 · Artificial Intelligence

Why AgentScope Java Beats Python for Multi‑Agent AI Development

AgentScope Java, Alibaba's open‑source multi‑agent framework, lets Java developers build autonomous assistants and collaborative agents with built‑in ReAct reasoning, RAG, memory, and enterprise‑grade integrations, offering a compelling alternative to Python‑centric AI stacks and Spring AI Alibaba.

AIAgentScopeFramework
0 likes · 10 min read
Why AgentScope Java Beats Python for Multi‑Agent AI Development
Coder Trainee
Coder Trainee
Mar 6, 2026 · Mobile Development

How to Retrieve a WeChat Mini Program User’s OpenID

This article walks through the complete process of obtaining a WeChat Mini Program user's OpenID by using wx.login to get a code, calling the updated auth.code2Session API with appid and appsecret, and handling the server‑side Java implementation that extracts the OpenID and session key.

APIJavaMiniProgram
0 likes · 4 min read
How to Retrieve a WeChat Mini Program User’s OpenID
Tech Musings
Tech Musings
Mar 5, 2026 · Cloud Native

Why Default Java GC Settings Kill Performance on Kubernetes (And How to Fix It)

Through a controlled experiment with four Spring Boot service groups on Kubernetes, this article shows that relying on Java’s default GC and heap settings can drastically reduce throughput and increase tail latency, especially under higher load, and demonstrates how explicit GC algorithm and Xms/Xmx tuning restores performance.

JVMJavaKubernetes
0 likes · 13 min read
Why Default Java GC Settings Kill Performance on Kubernetes (And How to Fix It)
Black & White Path
Black & White Path
Mar 5, 2026 · Information Security

How a Front‑End 0‑Day in a Major OA System Was Discovered and Exploited

The article walks through the discovery of an arbitrary ZIP‑file download vulnerability in a large OA front‑end, detailing how the attacker traced the vulnerable Spring MVC controller, built a PoC using a controllable cookie, achieved directory‑traversal reads, demonstrated a DOS extension, and finally suggested input‑filter mitigations.

0dayJavaOA
0 likes · 9 min read
How a Front‑End 0‑Day in a Major OA System Was Discovered and Exploited
DeWu Technology
DeWu Technology
Mar 4, 2026 · Backend Development

How the Multiplicative Tree Framework Enables Instant Formula Deployment and Stable High‑Performance Ranking

The article details the design and evolution of the Multiplicative Tree framework—from version 1.0 to 3.0—showing how a DSL‑based, compile‑time‑checked configuration system delivers instant formula deployment, robust stability safeguards, and significant performance gains for multi‑objective ranking models.

CDSLJava
0 likes · 18 min read
How the Multiplicative Tree Framework Enables Instant Formula Deployment and Stable High‑Performance Ranking
Selected Java Interview Questions
Selected Java Interview Questions
Mar 3, 2026 · Backend Development

Automate Sensitive Data Encryption in MyBatis with Annotations and Interceptors

This article explains how to replace manual encryption code with a lightweight, annotation‑driven solution that uses a custom MyBatis interceptor to automatically encrypt and decrypt sensitive fields such as phone numbers, emails, and ID cards, improving code readability, maintainability, and security compliance.

InterceptorJavaMyBatis
0 likes · 20 min read
Automate Sensitive Data Encryption in MyBatis with Annotations and Interceptors
java1234
java1234
Mar 3, 2026 · Backend Development

How MyBatis Plugins Execute: Core Interface and Runtime Flow

This article explains MyBatis’s plugin mechanism, detailing the Interceptor interface methods, how plugins form an interceptor chain to wrap core components like Executor, and provides a step‑by‑step example of a logging plugin with code and configuration, illustrating the runtime flow and extension capabilities.

InterceptorJavaMyBatis
0 likes · 7 min read
How MyBatis Plugins Execute: Core Interface and Runtime Flow
java1234
java1234
Mar 3, 2026 · Backend Development

One‑Line Java Time Tracker: Millisecond Precision and Up to 300% Faster Performance

The article shows how to replace repetitive System.currentTimeMillis() timing code with a concise TimeTracker utility that leverages try‑with‑resources, functional interfaces, and flexible exception handling to achieve millisecond‑level measurement and dramatically improve code readability and performance.

Exception HandlingFunctional InterfaceJava
0 likes · 13 min read
One‑Line Java Time Tracker: Millisecond Precision and Up to 300% Faster Performance
Coder Trainee
Coder Trainee
Mar 3, 2026 · Fundamentals

Common Pitfalls When Using Java List Collections

The article explains three typical traps when working with Java List: Arrays.asList returns a fixed‑size list that throws UnsupportedOperationException on add/remove, iterating and removing elements directly also fails, and converting primitive arrays with Arrays.asList produces an unexpected single‑element list.

Arrays.asListCollectionsJava
0 likes · 4 min read
Common Pitfalls When Using Java List Collections
Architect-Kip
Architect-Kip
Mar 2, 2026 · Backend Development

Mastering Java Logging: Framework Choices, Level Rules, and Best Practices

This guide details how to select a Java logging framework, defines a decision tree for when to log, maps log levels (ERROR, WARN, INFO, DEBUG) to concrete scenarios, provides code‑handling principles, outlines prohibited logging patterns, and includes a quick reference for alerting rules.

Best PracticesJavaLogging
0 likes · 12 min read
Mastering Java Logging: Framework Choices, Level Rules, and Best Practices
SpringMeng
SpringMeng
Mar 2, 2026 · Backend Development

Deep Dive into an Asynchronous Spring Boot + Tesseract OCR Pipeline for Invoice Recognition

This article presents a complete design and implementation of a high‑throughput, asynchronous OCR pipeline built with Spring Boot and Tesseract, covering distributed architecture, thread‑pool tuning, image‑preprocessing, multi‑engine recognition, data extraction strategies, Kubernetes deployment, security compliance, chaos testing, and future AI‑driven enhancements.

AsynchronousGPUJava
0 likes · 10 min read
Deep Dive into an Asynchronous Spring Boot + Tesseract OCR Pipeline for Invoice Recognition
IT Services Circle
IT Services Circle
Mar 1, 2026 · Interview Experience

Li Auto Java Campus Interview Guide: Salary Insights and Core Java Q&A

This article combines Li Auto's 2026 campus recruitment salary data—showing typical offers ranging from 25k to 32k monthly with 14‑16 month packages—and a comprehensive Java interview cheat‑sheet covering inheritance vs interfaces, Map implementations, String handling, ConcurrentHashMap internals, reference types, memory‑leak detection, design patterns, observer pattern, multithreading, Future execution, and deadlock prevention.

ConcurrentHashMapInterviewJava
0 likes · 27 min read
Li Auto Java Campus Interview Guide: Salary Insights and Core Java Q&A
Java Tech Enthusiast
Java Tech Enthusiast
Mar 1, 2026 · Backend Development

Master Maven Assembly Plugin: Build Fat JARs, ZIPs, and Custom Distributions

This guide explains how to use Maven's assembly plugin to create executable JARs, ZIP/TAR archives, and custom distribution packages by configuring the plugin in pom.xml, writing assembly descriptors, and running a single Maven command, with multiple real‑world examples and a sample project structure.

Assembly pluginJavaMaven
0 likes · 13 min read
Master Maven Assembly Plugin: Build Fat JARs, ZIPs, and Custom Distributions
Java Architect Handbook
Java Architect Handbook
Mar 1, 2026 · Backend Development

When to Use #{} vs ${} in MyBatis? A Deep Dive for Java Interviews

This article explains the interview focus on MyBatis placeholders, detailing the syntax, security implications, performance differences, appropriate scenarios, best‑practice guidelines, common pitfalls, and provides concrete code examples to help candidates master #{} and ${} usage.

InterviewJavaMyBatis
0 likes · 9 min read
When to Use #{} vs ${} in MyBatis? A Deep Dive for Java Interviews
java1234
java1234
Mar 1, 2026 · Backend Development

Spring MVC Interceptor vs Filter: Key Differences and Execution Order

This article explains the fundamental differences between Spring MVC interceptors and servlet filters—including definition, scope, configuration, lifecycle, and execution timing—and details their processing order with illustrative code samples and a request flow diagram.

InterceptorJavaServlet
0 likes · 8 min read
Spring MVC Interceptor vs Filter: Key Differences and Execution Order
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Mar 1, 2026 · Backend Development

8 Common Java Collection Mistakes That Kill Performance (and How to Fix Them)

This article reveals eight frequent Java collection pitfalls—such as costly ArrayList insertions, inefficient LinkedList access, repeated contains checks, missing initial capacities, unordered HashMaps, modifying collections during streams, misuse of parallelStream, and in‑memory caches—explaining why they degrade performance and providing concrete, code‑driven alternatives.

Backend DevelopmentCollectionsJava
0 likes · 10 min read
8 Common Java Collection Mistakes That Kill Performance (and How to Fix Them)
Java Architect Handbook
Java Architect Handbook
Feb 28, 2026 · Backend Development

Prevent Duplicate Submissions and Rate‑Limit APIs with the Guardian Spring Boot Starter

This article introduces Guardian, a lightweight Spring Boot starter that provides anti‑duplicate‑submission protection and request rate limiting, explains how to integrate it via Maven, configure it with annotations or YAML, and details its internal workflow, storage options, concurrency handling, and monitoring capabilities.

JavaRedisSpring Boot
0 likes · 17 min read
Prevent Duplicate Submissions and Rate‑Limit APIs with the Guardian Spring Boot Starter
SpringMeng
SpringMeng
Feb 27, 2026 · Backend Development

How to Use IntelliJ IDEA Diagrams to Explore Java Inheritance and Source Code

This guide shows how to leverage IntelliJ IDEA's diagram feature to visualize inheritance and interface relationships of Java classes, prune irrelevant nodes, inspect members, filter visibility, add additional classes, and quickly jump to source code, making code navigation far more efficient.

DiagramsIDE TipsInheritance
0 likes · 5 min read
How to Use IntelliJ IDEA Diagrams to Explore Java Inheritance and Source Code
Java Captain
Java Captain
Feb 27, 2026 · Fundamentals

Long vs BigDecimal for Money: Ten Community Perspectives

A developer asks whether monetary amounts should be stored as Long or BigDecimal, and the article compiles ten varied community suggestions—ranging from using Long, BigDecimal, String, custom types, Protobuf, leadership directives, AI answers, frugal choices, to whimsical ideas—each with brief explanations and illustrative images.

BigDecimalData TypesJava
0 likes · 4 min read
Long vs BigDecimal for Money: Ten Community Perspectives
Selected Java Interview Questions
Selected Java Interview Questions
Feb 26, 2026 · Backend Development

Why Your Snowflake‑Like ID Generator May Duplicate IDs Under High Concurrency

The article analyzes a custom TraceIdGenerator that uses a simple AtomicInteger counter and IP‑based prefix, identifying how its reset logic and CAS competition can cause duplicate IDs in high‑concurrency scenarios, and proposes timestamp checks, larger ranges, retry mechanisms, and true Snowflake implementation as solutions.

AtomicIntegerID generationJava
0 likes · 11 min read
Why Your Snowflake‑Like ID Generator May Duplicate IDs Under High Concurrency
Coder Trainee
Coder Trainee
Feb 26, 2026 · Backend Development

Understanding the Detailed Usage of @Nullable Annotation

This article explains how the @Nullable annotation can be applied to methods, fields, and parameters in Java, provides concrete code examples for each case, and shows a real‑world usage from Spring's StringUtils utility.

@NullableJavaannotation
0 likes · 4 min read
Understanding the Detailed Usage of @Nullable Annotation
java1234
java1234
Feb 26, 2026 · Databases

Can Redis Cluster Lose Writes? Why and How to Prevent Them

Redis Cluster can lose writes due to asynchronous replication, network partitions, inadequate persistence settings, or unconfirmed client operations, but enabling AOF, configuring replication acknowledgments, using Sentinel or built‑in HA, and adding client retry logic can mitigate these risks, as demonstrated with a Java Jedis example.

AOFJavaJedis
0 likes · 7 min read
Can Redis Cluster Lose Writes? Why and How to Prevent Them
Architect's Guide
Architect's Guide
Feb 25, 2026 · Backend Development

Convert Word (.docx) to PDF in Spring Boot with docx4j – A Complete Guide

Learn how to seamlessly convert uploaded .docx files to PDF in a Spring Boot application using the pure‑Java docx4j library, covering solution comparison, Maven dependencies, a utility class, controller implementation, and Windows/Linux font‑encoding fixes for reliable, high‑fidelity document rendering.

JavaMavenPDF conversion
0 likes · 11 min read
Convert Word (.docx) to PDF in Spring Boot with docx4j – A Complete Guide
Java Architect Handbook
Java Architect Handbook
Feb 24, 2026 · Backend Development

How RocketMQ Guarantees Ordered Message Delivery: Deep Dive and Best Practices

This article explains the interview focus points for RocketMQ ordered messages, details the partition‑ordered model and its two‑step guarantee mechanism, provides in‑depth analysis of producer and consumer processes, includes full Java code examples, and outlines best practices, pitfalls, and common misconceptions.

JavaMessageListenerOrderlyMessageQueueSelector
0 likes · 10 min read
How RocketMQ Guarantees Ordered Message Delivery: Deep Dive and Best Practices
java1234
java1234
Feb 24, 2026 · Backend Development

How to Handle Transactions in RabbitMQ with Java

This article explains RabbitMQ's transaction mechanism, walks through the four-step process of opening, executing, committing, or rolling back a transaction, provides a complete Java example with Maven setup, and discusses performance impacts and when to prefer acknowledgments over transactions.

AcknowledgmentJavaMessaging
0 likes · 6 min read
How to Handle Transactions in RabbitMQ with Java
Java Companion
Java Companion
Feb 24, 2026 · Backend Development

Spring Boot Online Dependency Vulnerability Scanner: One‑Click Detection of Potential Security Issues

This guide presents a lightweight Spring Boot dependency vulnerability scanner that automatically collects all project JARs, matches them against a CVE database, visualizes risk levels, provides detailed remediation steps and can be integrated into local development, emergency response, and CI/CD pipelines.

CVEDependency ScanningJava
0 likes · 20 min read
Spring Boot Online Dependency Vulnerability Scanner: One‑Click Detection of Potential Security Issues
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Feb 23, 2026 · Backend Development

8 Essential Null‑Handling Rules for Spring Boot 3 to Prevent NPEs

This article presents eight concrete rules for handling null values in Spring Boot 3 applications, illustrating common pitfalls with code snippets, explaining production‑impact risks, and offering best‑practice solutions such as using empty collections, explicit null checks, proper Optional usage, and consistent API design.

Best PracticesCollectionsJava
0 likes · 11 min read
8 Essential Null‑Handling Rules for Spring Boot 3 to Prevent NPEs
Full-Stack DevOps & Kubernetes
Full-Stack DevOps & Kubernetes
Feb 22, 2026 · Cloud Native

How to Stabilize Java Services on Kubernetes: A 3‑Year Success Story

This article walks through a real‑world Java service on Kubernetes, detailing the initial confidence, recurring OOM and rollout issues, and a multi‑round remediation that introduced container‑aware JVM settings, refined resource requests, OOM dumps, probes, and metrics, ultimately achieving three years of stable operation with lower resource usage.

Cloud NativeJVMJava
0 likes · 10 min read
How to Stabilize Java Services on Kubernetes: A 3‑Year Success Story
Top Architect
Top Architect
Feb 21, 2026 · Backend Development

Mastering Unified Exception Handling in Spring: Clean Code, Enums, and Assertions

This article explains how to replace repetitive try‑catch blocks in Java Spring applications with a unified exception handling strategy that leverages @ControllerAdvice, custom enums, and assertion utilities, providing clean, maintainable code, internationalized error messages, and consistent response structures for both business and system errors.

EnumsException HandlingJava
0 likes · 21 min read
Mastering Unified Exception Handling in Spring: Clean Code, Enums, and Assertions
Top Architect
Top Architect
Feb 21, 2026 · Backend Development

Boost Your Maven Multi‑Module Setup with a One‑Click Generation Plugin

This article introduces a Maven aggregation Quickstart plugin for IntelliJ IDEA that automates the creation of multi‑module Java projects, explains its core features, provides step‑by‑step installation and usage instructions, shows how to customize templates, and offers troubleshooting tips along with the source repository.

IntelliJJavaMaven
0 likes · 11 min read
Boost Your Maven Multi‑Module Setup with a One‑Click Generation Plugin
SpringMeng
SpringMeng
Feb 21, 2026 · Backend Development

How to Elegantly Implement an Online User Count with Redis ZSET

This article explains how to build a real‑time online user counter by identifying users via tokens or browser fingerprints, storing them in a Redis sorted set, and using ZADD, ZRANGEBYSCORE, ZREMRANGEBYSCORE and ZREM commands to add, query, and clean the data.

FingerprintJSJavaOnline Users
0 likes · 7 min read
How to Elegantly Implement an Online User Count with Redis ZSET
Top Architect
Top Architect
Feb 20, 2026 · Backend Development

Why a Workflow Engine Is Essential for Scalable Business Platforms

The article explains how excessive if‑else branching in multi‑business systems harms code maintainability, and demonstrates how a workflow engine combined with a plugin extension mechanism can isolate business logic, simplify testing, and enable flexible execution chains, using the open‑source MemberClub project as a concrete example.

Backend ArchitectureJavaSpringBoot
0 likes · 11 min read
Why a Workflow Engine Is Essential for Scalable Business Platforms
Coder Trainee
Coder Trainee
Feb 20, 2026 · Backend Development

Why Lombok-generated getters cause JSON fields to become lowercase

The article explains how Lombok’s @Data annotation generates getter and setter methods with a lowercase first letter for camel‑case fields, causing Jackson to serialize JSON property names in all lowercase, and offers three fixes: write methods manually, use @JsonProperty, or rename fields to avoid lower‑upper patterns.

JSONJacksonJava
0 likes · 4 min read
Why Lombok-generated getters cause JSON fields to become lowercase
Top Architect
Top Architect
Feb 19, 2026 · Backend Development

Implementing HTTP Range (Partial Content) Downloads with SpringBoot

This article explains why large file downloads can fail on unstable networks, how to use HTTP Range headers and status codes for resumable downloads, and provides a complete SpringBoot implementation—including controller, service logic, and range‑parsing code—to enable reliable partial content delivery.

File DownloadHTTPJava
0 likes · 10 min read
Implementing HTTP Range (Partial Content) Downloads with SpringBoot
Top Architect
Top Architect
Feb 18, 2026 · Fundamentals

What’s New in Java 25? 10+ Game‑Changing Features Explained

The article outlines the most impactful Java 25 enhancements—including compact object headers, generational Shenandoah GC, ahead‑of‑time compilation, JFR improvements, security updates, and the removal of 32‑bit support—explaining how each change boosts performance, safety, and observability for developers.

AoTGarbage CollectionJEP
0 likes · 5 min read
What’s New in Java 25? 10+ Game‑Changing Features Explained
Java Tech Enthusiast
Java Tech Enthusiast
Feb 18, 2026 · Backend Development

How Spring Debugger Enables Agent‑Free Remote Debugging of Java Apps

Spring Debugger’s new remote debugging feature lets developers inspect Spring beans, execute SQL, view configuration, and analyze transactions on running applications without using Java agents, leveraging container thread models like Tomcat’s persistent workers, with simple JDWP setup and a few limitations.

IDEJavaremote debugging
0 likes · 11 min read
How Spring Debugger Enables Agent‑Free Remote Debugging of Java Apps
java1234
java1234
Feb 18, 2026 · Fundamentals

A Complete Illustrated Guide to Java Generics: Benefits, Usage, and Common Pitfalls

This article explains why raw collections are unsafe, how Java generics enforce compile‑time type safety, reduce casting, improve code readability, and boost performance, and it walks through generic interfaces, collections, custom generic classes, inheritance rules, diamond syntax, and common restrictions with concrete code examples and diagrams.

CollectionsGenericsJava
0 likes · 10 min read
A Complete Illustrated Guide to Java Generics: Benefits, Usage, and Common Pitfalls