Tagged articles
5000 articles
Page 19 of 50
Top Architecture Tech Stack
Top Architecture Tech Stack
May 14, 2025 · Backend Development

Injecting List, Array, Set, and Map from Spring Configuration Files Using @Value and EL Expressions

This article explains how to store and inject collection types such as List, array, Set, and Map in Spring configuration files, demonstrates the pitfalls of using @Value directly, and provides practical solutions using @ConfigurationProperties, EL split functions, and custom decoders for flexible and safe property binding.

BackendEL expressionList
0 likes · 7 min read
Injecting List, Array, Set, and Map from Spring Configuration Files Using @Value and EL Expressions
IT Services Circle
IT Services Circle
May 14, 2025 · Mobile Development

The Origin and Rise of Android: From a Small Startup to a Global Mobile OS

From Google's early recruitment challenges to acquiring a tiny startup that built a Java‑based demo system, Android emerged as an open‑source mobile operating system, leveraging Dalvik, overcoming hardware competition, and ultimately dominating the global smartphone market through rapid development and strategic alliances.

AndroidDalvikGoogle
0 likes · 13 min read
The Origin and Rise of Android: From a Small Startup to a Global Mobile OS
Java Tech Enthusiast
Java Tech Enthusiast
May 14, 2025 · Backend Development

Understanding SpringBoot Interceptors: Filters, HandlerInterceptor, AOP, RestTemplate, Feign, and WebFilter

This article introduces the six main types of interceptors in SpringBoot—Filter, HandlerInterceptor, AOP, RestTemplate, Feign, and WebFilter—explaining their typical use‑cases, implementation details, common pitfalls, and best‑practice ordering to help developers choose the right tool for each scenario.

InterceptorSpringBootaop
0 likes · 8 min read
Understanding SpringBoot Interceptors: Filters, HandlerInterceptor, AOP, RestTemplate, Feign, and WebFilter
Java Captain
Java Captain
May 14, 2025 · Fundamentals

Creation and Stopping of Debug Sessions in IntelliJ

The article explains how IntelliJ creates a debug session via XDebuggerManager.startSessionAndShowTab, the role of XDebugSession and XDebugProcess, and details the sequence of events and listeners involved when the session is stopped, including process termination and listener cleanup.

IDEIntelliJProcessHandler
0 likes · 6 min read
Creation and Stopping of Debug Sessions in IntelliJ
Cognitive Technology Team
Cognitive Technology Team
May 14, 2025 · Fundamentals

How to Instantiate Java Objects Without Constructors Using Objenesis

This tutorial explains how Objenesis enables Java objects to be instantiated without invoking constructors, covering traditional object creation, the library’s internal mechanisms, Maven setup, usage examples with ObjenesisStd, ObjenesisSerializer, and ObjenesisHelper, advanced scenarios, best practices, and considerations for safe adoption.

Object InstantiationObjenesisReflection
0 likes · 9 min read
How to Instantiate Java Objects Without Constructors Using Objenesis
IT Xianyu
IT Xianyu
May 14, 2025 · Databases

Using PostgreSQL Stored Procedures to Batch Update User Tags Efficiently

This article explains how Java developers can replace thousands of individual UPDATE statements with a single PostgreSQL stored procedure call, covering the motivation, procedure creation, Java invocation, scheduling with shell scripts, performance benchmarks, and common pitfalls.

Batch UpdateStored Procedurejava
0 likes · 8 min read
Using PostgreSQL Stored Procedures to Batch Update User Tags Efficiently
Top Architecture Tech Stack
Top Architecture Tech Stack
May 14, 2025 · Backend Development

Implementing IP+URL Rate Limiting with Spring Boot Interceptor and Redis Distributed Lock

This guide demonstrates how to protect a Spring Boot service from malicious requests by creating a custom interceptor that tracks URL‑IP request counts, uses Redis for distributed locking, and disables offending IPs after a configurable threshold, with full code examples and configuration steps.

DistributedLockInterceptorRateLimiting
0 likes · 8 min read
Implementing IP+URL Rate Limiting with Spring Boot Interceptor and Redis Distributed Lock
Java Web Project
Java Web Project
May 13, 2025 · Backend Development

How Maven‑mvnd Supercharges Java Builds with a Daemon Process

Maven‑mvnd introduces a long‑running daemon to eliminate JVM startup overhead, cut resource usage, accelerate frequent builds, and streamline multi‑module projects, while remaining compatible with existing Maven workflows and offering GraalVM‑based native execution for faster, lighter builds.

Build OptimizationCI/CDdaemon
0 likes · 7 min read
How Maven‑mvnd Supercharges Java Builds with a Daemon Process
Code Ape Tech Column
Code Ape Tech Column
May 13, 2025 · Backend Development

Elegant Multi‑Tenant Data Isolation with MyBatis‑Plus in SaaS Applications

This article explains the concept of SaaS multi‑tenant architecture, compares three data‑isolation designs, and demonstrates how to implement elegant tenant‑level data isolation in Java using MyBatis‑Plus’s tenant plugin, complete with configuration, handler code, SQL examples, and troubleshooting tips.

BackendData IsolationSaaS
0 likes · 15 min read
Elegant Multi‑Tenant Data Isolation with MyBatis‑Plus in SaaS Applications
Cognitive Technology Team
Cognitive Technology Team
May 13, 2025 · Fundamentals

An Introduction to SootUp: Static Analysis of JVM Code

This article introduces the SootUp library, explains how to configure its Maven dependencies, describes the Jimple intermediate representation, and demonstrates how to use SootUp's API to analyze Java source code, bytecode, and method bodies through a series of code examples.

JVMJimpleLibrary
0 likes · 14 min read
An Introduction to SootUp: Static Analysis of JVM Code
Continuous Delivery 2.0
Continuous Delivery 2.0
May 13, 2025 · Backend Development

Common Backend Code Smells and How to Prevent Over‑Engineering, Deep Inheritance, Excessive DTO Layers, Fake Interfaces, and Contract‑less Microservices

The article outlines common backend code smells such as over‑engineering, deep inheritance hierarchies, excessive DTO/VO layers, unnecessary interfaces, and contract‑less microservice designs, explains why they harm team efficiency and project quality, and provides concrete Java examples and best‑practice recommendations to avoid them.

InheritanceMicroservicescode quality
0 likes · 5 min read
Common Backend Code Smells and How to Prevent Over‑Engineering, Deep Inheritance, Excessive DTO Layers, Fake Interfaces, and Contract‑less Microservices
Architect
Architect
May 12, 2025 · Backend Development

Why 500 RPS Dropped to 50 RPS: Tracing Spring Bean Creation and Thread‑Pool Bottlenecks

A ToB Java service that initially expected 500 requests per second fell to only 50 RPS under load, prompting a step‑by‑step investigation of CPU usage, lock contention, slow SQL, excessive logging, prototype‑scoped beans, and thread‑pool configuration, ultimately revealing how bean creation and async execution affect throughput.

BackendProfilingThroughput
0 likes · 16 min read
Why 500 RPS Dropped to 50 RPS: Tracing Spring Bean Creation and Thread‑Pool Bottlenecks
Java Captain
Java Captain
May 12, 2025 · Fundamentals

Understanding Java Thread Pools: Design, Implementation, and Usage

This article explains the purpose, advantages, design principles, configuration parameters, task queue options, rejection policies, lifecycle management, and internal execution flow of Java's ThreadPoolExecutor, providing code examples and detailed insights into how thread pools work in concurrent applications.

ExecutorThreadPoolconcurrency
0 likes · 30 min read
Understanding Java Thread Pools: Design, Implementation, and Usage
Pan Zhi's Tech Notes
Pan Zhi's Tech Notes
May 12, 2025 · Backend Development

How to Use SpringBoot, Dubbo, and Seata to Solve Distributed Transaction Data Inconsistency

This article walks through integrating SpringBoot, Dubbo, and Seata to implement reliable distributed transactions, covering project setup, Maven dependencies, service definitions, Nacos registration, configuration files, testing normal commits and rollbacks, and troubleshooting version incompatibilities.

Distributed TransactionsDubboMicroservices
0 likes · 17 min read
How to Use SpringBoot, Dubbo, and Seata to Solve Distributed Transaction Data Inconsistency
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
May 12, 2025 · Backend Development

Mastering Feature Toggles in Spring Boot 3: 6 Practical Implementations

This article explains why feature flags are essential in Spring Boot projects and walks through six concrete ways to implement dynamic toggles—including @Profile, @Conditional, @RefreshScope, database‑backed scheduling, Apache Commons Configuration, and Togglz—complete with code snippets and usage tips.

Dynamic Refreshbackend-developmentconfiguration
0 likes · 9 min read
Mastering Feature Toggles in Spring Boot 3: 6 Practical Implementations
Java Captain
Java Captain
May 11, 2025 · Fundamentals

Understanding Abstract Classes and Interfaces: Design Principles and Practical Uses

Abstract classes and interfaces are core object‑oriented concepts that enable reusable, extensible, and maintainable code; this article explains their definitions, design considerations, and real‑world applications, illustrated with Java examples of a Control hierarchy and a Shape interface implementation.

Abstract ClassInheritanceInterface
0 likes · 5 min read
Understanding Abstract Classes and Interfaces: Design Principles and Practical Uses
Top Architecture Tech Stack
Top Architecture Tech Stack
May 11, 2025 · Backend Development

Using Java 8 Functional Interfaces to Replace Repetitive if‑else Logic

This article explains how Java 8 functional interfaces such as Function, Supplier, Consumer, and Runnable can replace repetitive if‑else statements, provides code examples for throwing exceptions, branch handling, and present‑or‑else logic, and demonstrates practical usage to improve backend code readability.

BackendConsumerException Handling
0 likes · 6 min read
Using Java 8 Functional Interfaces to Replace Repetitive if‑else Logic
IT Services Circle
IT Services Circle
May 10, 2025 · Backend Development

Understanding Java synchronized: Locks, Optimizations, and Example Code

This article explains how Java's synchronized keyword works, covering object and class locks, lock upgrades such as biased, lightweight, and heavyweight locks, the underlying monitor implementation, example code for a thread‑safe counter, and performance considerations for high‑concurrency scenarios.

concurrencyjavalocking
0 likes · 7 min read
Understanding Java synchronized: Locks, Optimizations, and Example Code
Java One
Java One
May 10, 2025 · Backend Development

Master Maven pom.xml: Essential Configurations for Java Projects

This guide explains how to configure a Maven pom.xml file, covering project coordinates, dependency scopes, dependencyManagement, exclusions, conflict resolution, lifecycle phases, goals, common plugins, profile activation, repository settings, distribution management, and modular project structure for reliable Java builds.

builddependency managementjava
0 likes · 21 min read
Master Maven pom.xml: Essential Configurations for Java Projects
Java Architect Essentials
Java Architect Essentials
May 9, 2025 · Backend Development

Using @ConversionService in Spring Boot for Automatic Request Parameter Conversion

Spring Boot's @ConversionService annotation simplifies request parameter conversion by automatically transforming string inputs into target types such as dates or numbers, eliminating repetitive manual parsing code, supporting custom converters, and enhancing code maintainability and development efficiency, as demonstrated with practical examples.

ConversionServiceRequest Parameter Conversionbackend-development
0 likes · 6 min read
Using @ConversionService in Spring Boot for Automatic Request Parameter Conversion
Java Tech Enthusiast
Java Tech Enthusiast
May 9, 2025 · Information Security

Understanding and Preventing HTTP Redirect Attacks in Java Applications

After a login module unintentionally redirected users to a gambling site, the author explains how maliciously crafted redirect parameters enable HTTP redirect attacks, demonstrates vulnerable Java code, and outlines three defensive layers—whitelisting, signature verification, and path sanitization—plus five best‑practice tips to prevent such exploits.

HTTP redirectOpen RedirectWeb Vulnerability
0 likes · 7 min read
Understanding and Preventing HTTP Redirect Attacks in Java Applications
Su San Talks Tech
Su San Talks Tech
May 9, 2025 · Backend Development

Master Spring Boot Interceptors: Filters, Handlers, AOP, RestTemplate & Feign

This article explores the hierarchy of Spring Boot interception mechanisms—Filter, HandlerInterceptor, AOP, RestTemplate, Feign, and WebFilter—detailing their typical use cases, implementation code, pitfalls, and best‑practice ordering, while providing practical tips and performance monitoring advice for robust backend development.

Interceptoraopfeign
0 likes · 8 min read
Master Spring Boot Interceptors: Filters, Handlers, AOP, RestTemplate & Feign
Java Captain
Java Captain
May 9, 2025 · Databases

Using H2 Database in Embedded, Server, and Mixed Modes with Java

This article demonstrates how to use the H2 database with Java 1.8, covering embedded (file and memory) modes, server modes (Web, TCP, PG), mixed mode configurations, required dependencies, and provides complete JUnit test code examples for creating, accessing, and managing tables.

JDBCJUnitServer
0 likes · 17 min read
Using H2 Database in Embedded, Server, and Mixed Modes with Java
Top Architecture Tech Stack
Top Architecture Tech Stack
May 9, 2025 · Backend Development

Understanding DTO, BO, PO, and VO in Backend Development

This article explains the concepts of Data Transfer Object (DTO), Business Object (BO), Persistent Object (PO), and Value Object (VO) in backend development, compares their roles, provides Java code examples, and discusses how to configure Spring MVC to filter null fields, while also including promotional content for IDE licenses.

POSpring MVCbackend-development
0 likes · 6 min read
Understanding DTO, BO, PO, and VO in Backend Development
Java Architect Essentials
Java Architect Essentials
May 8, 2025 · Backend Development

How @Encrypt Simplifies API Security in SpringBoot

This article explains how the @Encrypt annotation in SpringBoot can automatically handle encryption and decryption of sensitive API parameters, eliminating repetitive manual code, improving maintainability, and allowing custom encryption strategies for real‑world applications.

API SecuritySpringBootannotation
0 likes · 7 min read
How @Encrypt Simplifies API Security in SpringBoot
Architecture Digest
Architecture Digest
May 8, 2025 · Backend Development

Introducing Maven‑mvnd: A Faster Maven Daemon for Java Builds

The article explains Maven‑mvnd, a daemon‑based Maven variant that eliminates JVM startup overhead, reduces resource consumption, and speeds up single‑ and multi‑module Java builds, while remaining compatible with existing Maven workflows and offering simple installation, configuration, and usage instructions.

Build ToolCI/CDjava
0 likes · 6 min read
Introducing Maven‑mvnd: A Faster Maven Daemon for Java Builds
Su San Talks Tech
Su San Talks Tech
May 8, 2025 · Backend Development

Boost Your Java Productivity: Essential Utility Classes You Should Know

This article introduces nine indispensable Java utility classes—including Collections, CollectionUtils, Lists, Objects, StringUtils, BeanUtils, ReflectionUtils, DigestUtils, and HttpStatus—showing how each can simplify common tasks, reduce boilerplate code, and improve development efficiency with clear examples and code snippets.

Apache CommonsCollectionsUtility Classes
0 likes · 20 min read
Boost Your Java Productivity: Essential Utility Classes You Should Know
Java Captain
Java Captain
May 8, 2025 · Backend Development

Guide to Using easy-data-scope for Dynamic SQL Data Permissions in Spring Boot

This tutorial explains how to set up and use the easy-data-scope library in a Spring Boot project to implement dynamic SQL data‑permission rules with MyBatis, covering database preparation, Maven dependencies, core annotations, configuration files, and example queries for various permission scenarios.

Data Permissionjavamybatis
0 likes · 10 min read
Guide to Using easy-data-scope for Dynamic SQL Data Permissions in Spring Boot
IT Xianyu
IT Xianyu
May 8, 2025 · Databases

Redis for DBAs: Quick Installation, Core Commands, Caching Design Patterns, and High‑Concurrency Practices

This article explains why Redis is becoming a DBA's favorite, provides a five‑minute installation guide, essential commands, cache‑design pitfalls and solutions, explores Redis data structures with Java examples, demonstrates distributed locking and flash‑sale implementations, and covers clustering, backup, monitoring, and performance tuning.

Clusterdistributed-lockjava
0 likes · 9 min read
Redis for DBAs: Quick Installation, Core Commands, Caching Design Patterns, and High‑Concurrency Practices
Lin is Dream
Lin is Dream
May 8, 2025 · Backend Development

Boost Large-Scale Excel Exports in Java with a Multi-Threaded EasyExcel Template

This article introduces a reusable Java template that leverages EasyExcel v3.3.2 to efficiently export massive backend datasets—such as orders or financial records—to Excel, supporting both multi‑threaded and synchronous modes, pagination, sheet splitting, and customizable query logic, thereby reducing repetitive code and improving performance.

easyexcelexcel-exportjava
0 likes · 11 min read
Boost Large-Scale Excel Exports in Java with a Multi-Threaded EasyExcel Template
Java Tech Enthusiast
Java Tech Enthusiast
May 8, 2025 · Backend Development

Comprehensive Overview of Spring Ecosystem Upgrades: Spring 6 Core Features, Spring Boot 3.0 Breakthroughs, and Migration Roadmap

The article surveys the Spring 6 and Spring Boot 3.0 upgrades—JDK 17 baseline, virtual threads, @HttpExchange client, RFC 7807 ProblemDetail handling, GraalVM native images, Jakarta EE 9+ migration, enhanced auto‑configuration, OAuth2 authorization server, Prometheus‑compatible metrics—and provides a step‑by‑step migration roadmap with practical recommendations for modernizing e‑commerce applications.

Cloud NativeMicroservicesVirtual Threads
0 likes · 7 min read
Comprehensive Overview of Spring Ecosystem Upgrades: Spring 6 Core Features, Spring Boot 3.0 Breakthroughs, and Migration Roadmap
Ma Wei Says
Ma Wei Says
May 8, 2025 · Backend Development

Mastering Java ThreadPoolExecutor: Prevent OOM and Boost Concurrency

This article explains the fundamentals of Java threads and thread pools, details the configurable parameters of ThreadPoolExecutor, highlights the pitfalls of the Executors factory methods, and provides concrete recommendations and code examples for safely tuning thread pools across different workload types.

ThreadPoolThreadPoolExecutorconcurrency
0 likes · 14 min read
Mastering Java ThreadPoolExecutor: Prevent OOM and Boost Concurrency
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
May 8, 2025 · Backend Development

Master Spring Boot 3 Controllers: Real‑World Cases & Advanced Techniques

Explore a comprehensive Spring Boot 3 tutorial featuring 122 real‑world controller examples—from basic @RestController setup and dynamic URL configuration to advanced SpEL usage, interface default methods, exception handling, data binding, and custom endpoints—complete with code snippets and test results.

ControllerREST APIbackend-development
0 likes · 8 min read
Master Spring Boot 3 Controllers: Real‑World Cases & Advanced Techniques
Java Architect Essentials
Java Architect Essentials
May 7, 2025 · Backend Development

Simplify SpringBoot API Versioning with the @ApiVersion Annotation

This article explains how the @ApiVersion annotation in SpringBoot can automatically manage multiple API versions, reducing manual URL changes, eliminating duplicated code, and improving maintainability, with practical code examples and a discussion of advanced usage scenarios.

API VersioningBackendSpringBoot
0 likes · 8 min read
Simplify SpringBoot API Versioning with the @ApiVersion Annotation
Sohu Tech Products
Sohu Tech Products
May 7, 2025 · Backend Development

Master Java Concurrency: Fork/Join, CountDownLatch, CyclicBarrier, Semaphore & Exchanger Deep Dive

This article provides a comprehensive guide to Java's core concurrency utilities—including Fork/Join, CountDownLatch, CyclicBarrier, Semaphore, and Exchanger—explaining their principles, internal AQS implementation, practical usage patterns, performance optimizations, and complete code examples for real‑world scenarios.

CountDownLatchCyclicBarrierExchanger
0 likes · 25 min read
Master Java Concurrency: Fork/Join, CountDownLatch, CyclicBarrier, Semaphore & Exchanger Deep Dive
Architecture Digest
Architecture Digest
May 7, 2025 · Backend Development

Analyzing Why Spring Boot Startup Is Slow: Detailed Breakdown and Profiling

This article investigates the reasons behind Spring Boot's slow startup by tracing the execution timeline, examining the prepareEnvironment and refreshContext phases, profiling bean creation, configuration loading, and external client initialization, and provides sample Java code for measuring and visualizing each step.

ProfilingSpringBootjava
0 likes · 13 min read
Analyzing Why Spring Boot Startup Is Slow: Detailed Breakdown and Profiling
DeWu Technology
DeWu Technology
May 7, 2025 · Backend Development

Building and Using a Model Context Protocol (MCP) Server with Spring AI

The article explains Anthropic’s Model Context Protocol, outlines its architecture, and provides a step‑by‑step guide to creating a Spring AI‑based MCP server in Java—including adding the starter, defining @Tool‑annotated services, packaging the jar, configuring the Cline plugin, and demonstrating advanced tools such as Elasticsearch queries.

AI integrationMCPModel Context Protocol
0 likes · 10 min read
Building and Using a Model Context Protocol (MCP) Server with Spring AI
IT Services Circle
IT Services Circle
May 7, 2025 · Backend Development

Understanding RocketMQ Long‑Polling Mechanism and Its Implementation

This article explains how RocketMQ implements long‑polling for message consumption, detailing the pull‑based model, the broker and consumer timeout settings, the internal suspension of pull requests, and the processing loop that resumes suspended requests to improve efficiency.

BackendBrokerConsumer
0 likes · 7 min read
Understanding RocketMQ Long‑Polling Mechanism and Its Implementation
Java Tech Enthusiast
Java Tech Enthusiast
May 7, 2025 · Backend Development

Why Redis Increment Returns Null When Using @Transactional with Transaction Support in Spring Boot

The production failure where a customer‑service event creation stopped each morning was traced to RedisTemplate’s increment returning null because @Transactional combined with enabled Redis transaction support caused the command to be queued in a MULTI/EXEC block, which is fixed by using separate non‑transactional and transactional StringRedisTemplate beans.

debuggingjavaredis
0 likes · 11 min read
Why Redis Increment Returns Null When Using @Transactional with Transaction Support in Spring Boot
Code Ape Tech Column
Code Ape Tech Column
May 7, 2025 · Backend Development

Detailed Overview of Spring 6.0 Core Features and Spring Boot 3.0 Enhancements

This article provides a comprehensive guide to Spring 6.0’s new baseline JDK 17 requirement, virtual threads, declarative HTTP clients, RFC‑7807 ProblemDetail handling, GraalVM native image support, and Spring Boot 3.0 improvements such as Jakarta EE migration, OAuth2 authorization server, Prometheus monitoring, and practical migration steps for enterprise applications.

BackendPrometheusVirtual Threads
0 likes · 8 min read
Detailed Overview of Spring 6.0 Core Features and Spring Boot 3.0 Enhancements
Architect's Must-Have
Architect's Must-Have
May 7, 2025 · Backend Development

How ReentrantLock Works: Inside Java’s AbstractQueuedSynchronizer

This article dissects Java’s ReentrantLock implementation, detailing its delegation to AbstractQueuedSynchronizer, the lock acquisition process, the role of non‑fair and fair sync subclasses, the internal CLH queue mechanics, and how unlocking is handled, while comparing Lock with synchronized.

AbstractQueuedSynchronizerLockReentrantLock
0 likes · 14 min read
How ReentrantLock Works: Inside Java’s AbstractQueuedSynchronizer
Xuanwu Backend Tech Stack
Xuanwu Backend Tech Stack
May 7, 2025 · Backend Development

How to Prevent Duplicate Message Consumption in RabbitMQ

RabbitMQ often suffers from duplicate message consumption due to network glitches, node failures, or ACK issues, but you can eliminate repeats by implementing idempotent processing, using caches or deduplication tables, and leveraging manual acknowledgments or the Message Deduplication plugin, as illustrated with Java examples.

Manual AcknowledgmentMessage DeduplicationRabbitMQ
0 likes · 6 min read
How to Prevent Duplicate Message Consumption in RabbitMQ
Java Architect Essentials
Java Architect Essentials
May 6, 2025 · Backend Development

How @Authenticated Simplifies SpringBoot API Security

The article explains how the @Authenticated annotation in SpringBoot can replace repetitive manual authentication code, offering automatic request validation, role‑based checks, and streamlined error handling, with practical examples and a clear list of benefits for developers.

API SecurityAuthenticationBackend
0 likes · 7 min read
How @Authenticated Simplifies SpringBoot API Security
Full-Stack Internet Architecture
Full-Stack Internet Architecture
May 6, 2025 · Backend Development

Understanding Java CyclicBarrier with Practical Examples

This article explains Java's CyclicBarrier synchronization tool, compares it with CountDownLatch, demonstrates basic and array‑sum examples with reusable barriers and callback actions, and shows how it can coordinate multiple threads for tasks such as parallel computation and result aggregation.

CyclicBarrierSynchronizationconcurrency
0 likes · 6 min read
Understanding Java CyclicBarrier with Practical Examples
JD Tech Talk
JD Tech Talk
May 6, 2025 · Backend Development

Building a Java Method Call‑Stack Tracing Tool to Accelerate Issue Diagnosis

This article describes the pain points of daily on‑call debugging, explains how Java StackTraceElement can be leveraged to construct a chain‑style call‑stack visualizer, details the implementation of a lightweight tracing utility with configurable filters, and demonstrates its integration and practical usage in production environments.

StackTracedebuggingjava
0 likes · 14 min read
Building a Java Method Call‑Stack Tracing Tool to Accelerate Issue Diagnosis
JD Cloud Developers
JD Cloud Developers
May 6, 2025 · Backend Development

How to Instantly Trace Java Method Call Stacks for Faster Debugging

This article explains how to build and use a Java StackTrace utility that extracts and filters method call chains, enabling developers to quickly locate error sources, streamline debugging, and improve operational efficiency by visualizing execution paths through customizable parameters and integration examples.

StackTraceToolingbackend-development
0 likes · 17 min read
How to Instantly Trace Java Method Call Stacks for Faster Debugging
Cognitive Technology Team
Cognitive Technology Team
May 6, 2025 · Backend Development

Understanding Java's AbstractQueuedSynchronizer (AQS): Core Components, Design, and Practical Applications

AbstractQueuedSynchronizer (AQS) is the core framework for building Java locks and synchronizers, providing state management, FIFO queuing, and blocking/unblocking mechanisms; this article explains its components, design patterns, thread safety operations, and real-world implementations such as ReentrantLock and Semaphore, with code examples.

AQSLocksSynchronization
0 likes · 11 min read
Understanding Java's AbstractQueuedSynchronizer (AQS): Core Components, Design, and Practical Applications
Lin is Dream
Lin is Dream
May 5, 2025 · Backend Development

Mastering MDC with Logback: Traceable Logging for Distributed Systems

This article explains how to use SLF4J's MDC with Logback to assign a unique trace ID to each request, propagate it across threads and services, and configure log patterns so that logs become fully traceable for easier debugging in distributed systems.

Distributed SystemsThreadLocaljava
0 likes · 7 min read
Mastering MDC with Logback: Traceable Logging for Distributed Systems
Full-Stack Internet Architecture
Full-Stack Internet Architecture
May 5, 2025 · Backend Development

Using CountDownLatch in Java to Synchronize Multiple Threads for a Lucky Card Collection Example

This article explains the Java CountDownLatch utility, demonstrates its countdown synchronization mechanism with a lucky‑card‑collection scenario, provides a complete runnable example, and shows how the main thread waits for all worker threads to finish before proceeding to the lottery step.

CountDownLatchSynchronizationconcurrency
0 likes · 5 min read
Using CountDownLatch in Java to Synchronize Multiple Threads for a Lucky Card Collection Example
Java Tech Enthusiast
Java Tech Enthusiast
May 5, 2025 · Backend Development

Advanced MyBatis-Plus Features: Batch Insert, Logical Delete, Auto Field Fill, Type Handlers, Dynamic Table Names, Multi-Tenant

The article demonstrates advanced MyBatis‑Plus techniques—including high‑speed batch inserts with rewriteBatchedStatements, logical deletes via global config, automatic timestamp and user fields through MetaObjectHandler, JSON serialization with JacksonTypeHandler, dynamic table naming via an interceptor, and a brief multi‑tenant overview—to streamline development and reduce boilerplate code.

Batch InsertDynamic TableLogical Delete
0 likes · 16 min read
Advanced MyBatis-Plus Features: Batch Insert, Logical Delete, Auto Field Fill, Type Handlers, Dynamic Table Names, Multi-Tenant
Cognitive Technology Team
Cognitive Technology Team
May 5, 2025 · Fundamentals

Evolution of Java ConcurrentHashMap: From Segment Locks to CAS + synchronized (Java 7 vs Java 8)

This article examines the evolution of Java's ConcurrentHashMap, comparing the segment‑lock implementation in Java 7 with the CAS‑plus‑synchronized, bucket‑level locking and red‑black tree enhancements introduced in Java 8, covering lock mechanisms, data structures, resizing strategies, core operations, performance and suitable use cases.

ConcurrentHashMapDataStructureconcurrency
0 likes · 11 min read
Evolution of Java ConcurrentHashMap: From Segment Locks to CAS + synchronized (Java 7 vs Java 8)
Java Architect Essentials
Java Architect Essentials
May 4, 2025 · Backend Development

Mastering Request Timeouts in SpringBoot with @Timeout Annotation

Learn how the @Timeout annotation in SpringBoot simplifies request timeout management by eliminating repetitive configuration code, offering automatic timeout control, customizable fallback methods, and improved maintainability, with practical examples and step-by-step guidance for integrating it into your APIs.

BackendSpringBootTimeout
0 likes · 7 min read
Mastering Request Timeouts in SpringBoot with @Timeout Annotation
Java One
Java One
May 4, 2025 · Fundamentals

How Does Java Execution Differ from C? A 3‑Minute JVM Deep Dive

This article compares the compilation and runtime processes of C and Java programs, explains Java's class loading, linking, initialization, memory layout, execution engine components, and native interface, and highlights why Java startup is slower than native C execution.

CompilationJVMRuntime
0 likes · 16 min read
How Does Java Execution Differ from C? A 3‑Minute JVM Deep Dive
Java Captain
Java Captain
May 4, 2025 · Backend Development

Understanding Java Counter Implementations: AtomicLong vs LongAdder

This article explains the principles, advantages, and drawbacks of Java's AtomicLong and LongAdder counters, describes the CAS operation and its ABA problem, and analyzes why Alibaba recommends LongAdder for high‑concurrency, high‑availability scenarios in distributed systems.

CASatomiclongconcurrency
0 likes · 7 min read
Understanding Java Counter Implementations: AtomicLong vs LongAdder
Su San Talks Tech
Su San Talks Tech
May 4, 2025 · Backend Development

How to Export Millions of Excel Rows in Seconds: High‑Performance Java Strategies

Learn how to overcome memory and speed bottlenecks when exporting massive datasets to Excel by using streaming APIs like SXSSFWorkbook and EasyExcel, optimizing database pagination, tuning JVM and connection pools, and applying asynchronous shard processing to achieve stable sub‑200 MB memory usage for millions of rows.

Database paginationStreamingasynchronous processing
0 likes · 10 min read
How to Export Millions of Excel Rows in Seconds: High‑Performance Java Strategies
Cognitive Technology Team
Cognitive Technology Team
May 4, 2025 · Backend Development

Understanding Java ThreadLocal Memory Leaks: Mechanisms, Risks, Diagnosis, and Defensive Practices

This article explains the inner workings of Java's ThreadLocal, analyzes how weak and strong references can cause memory leaks in thread pools, demonstrates typical leak scenarios with code examples, and provides diagnostic tools and defensive coding practices to prevent such leaks.

Garbage CollectionThreadLocalbest practices
0 likes · 9 min read
Understanding Java ThreadLocal Memory Leaks: Mechanisms, Risks, Diagnosis, and Defensive Practices
Java Architect Essentials
Java Architect Essentials
May 3, 2025 · Backend Development

Simplifying CORS Handling in Spring Boot with the @CrossOrigin Annotation

Spring Boot developers can eliminate complex CORS configurations by applying the @CrossOrigin annotation directly on controllers or methods, which simplifies cross‑origin request handling, supports custom origins, methods, and headers, and can be globally configured for consistent, secure API access across environments.

CORSSpringBootcrossorigin
0 likes · 8 min read
Simplifying CORS Handling in Spring Boot with the @CrossOrigin Annotation
Architect
Architect
May 3, 2025 · Backend Development

Why Rebuild a Job Scheduler? Inside a Lightweight Distributed Timing Framework

This article explains the motivation, design choices, and implementation details of a custom distributed job scheduling framework, covering its architecture, load‑balancing strategy, message‑queue handling, persistence mechanisms, and key code snippets, while comparing it to existing solutions like Quartz, XXL‑Job, and PowerJob.

Distributed SystemsMessage QueuegRPC
0 likes · 16 min read
Why Rebuild a Job Scheduler? Inside a Lightweight Distributed Timing Framework
Lin is Dream
Lin is Dream
May 3, 2025 · Backend Development

Master Java Bean Validation: Reduce Redundant Code with JSR‑380 Annotations

This tutorial shows how to use Javax Validator annotations to simplify backend service interfaces, covering basic, collection, date, enum, conditional, group, and custom validations with complete Maven dependencies and example code, plus handling of validation exceptions.

BackendBean ValidationJSR-380
0 likes · 16 min read
Master Java Bean Validation: Reduce Redundant Code with JSR‑380 Annotations
Top Architect
Top Architect
May 3, 2025 · Backend Development

Implementing an OA Workflow Approval System with Activiti

This article explains how to design and implement a multi‑level approval workflow for an office automation system using the Activiti BPMN engine, covering process diagram creation, Spring Boot configuration, Java code for deployment and task handling, database tables, API overview, and comparisons with similar frameworks.

ActivitiBPMNWorkflow Engine
0 likes · 25 min read
Implementing an OA Workflow Approval System with Activiti
Cognitive Technology Team
Cognitive Technology Team
May 3, 2025 · Fundamentals

Understanding Java ThreadLocalMap: Structure, Operations, and Memory Management

This article explains the internal design of Java's ThreadLocalMap, covering its core Entry structure, hash table storage, linear probing for collision resolution, key operations (set, get, remove), memory‑leak scenarios, automatic cleanup mechanisms, and practical usage patterns such as thread‑context propagation and Android Looper.

MemoryManagementThreadLocalWeakReference
0 likes · 10 min read
Understanding Java ThreadLocalMap: Structure, Operations, and Memory Management
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
May 3, 2025 · Backend Development

Mastering Resilience4j: Real-World Spring Boot 3 Circuit Breaker Cases

This article explains why circuit breakers are essential for third‑party API calls, introduces the lightweight Resilience4j library, and provides step‑by‑step Spring Boot 3 examples—including Maven setup, RestTemplate and WebClient integrations, annotation usage, and both default and custom configurations—complete with code snippets and result screenshots.

backend-developmentcircuit breakerjava
0 likes · 8 min read
Mastering Resilience4j: Real-World Spring Boot 3 Circuit Breaker Cases
Cognitive Technology Team
Cognitive Technology Team
May 3, 2025 · Backend Development

Understanding ThreadLocal: Core Principles, Use Cases, Pitfalls, and Best Practices

ThreadLocal provides per‑thread variable storage to achieve thread isolation, improving concurrency performance, and is essential for safe data handling in Java, but improper use can cause memory leaks, data contamination, and other issues; this article explains its internal mechanism, common scenarios, pitfalls, and best‑practice guidelines with code examples.

ThreadLocalbest practicesconcurrency
0 likes · 19 min read
Understanding ThreadLocal: Core Principles, Use Cases, Pitfalls, and Best Practices
Deepin Linux
Deepin Linux
May 3, 2025 · Backend Development

Analyzing and Resolving Uninterruptible Thread States During System Suspend

This article examines why a thread may remain in an uninterruptible wake‑up state during system suspend, explains deadlock fundamentals, outlines thread lifecycle states, and provides practical debugging steps and mitigation strategies using Java concurrency tools and system monitoring.

Threadconcurrencydeadlock
0 likes · 23 min read
Analyzing and Resolving Uninterruptible Thread States During System Suspend
Java Architect Essentials
Java Architect Essentials
May 2, 2025 · Backend Development

Simplifying Request Parameter Binding in SpringBoot with @RequestParam

This article explains how the @RequestParam annotation in SpringBoot automatically binds request parameters—whether from forms, query strings, or URLs—to controller method arguments, reducing boilerplate code, improving readability, and enhancing development efficiency, with practical code examples and advanced usage tips.

ParameterBindingRequestParamSpringBoot
0 likes · 8 min read
Simplifying Request Parameter Binding in SpringBoot with @RequestParam
Java Captain
Java Captain
May 2, 2025 · Fundamentals

Understanding Java Concurrency: Challenges and Solutions from Hardware to JVM

This article uses real‑world analogies to dissect the three core challenges of Java concurrency—ordering, visibility, and atomicity—and explains how hardware instructions, JVM mechanisms, and Java SDK tools such as locks, CAS, and waiting/notification utilities provide efficient solutions.

CASJVMLocks
0 likes · 14 min read
Understanding Java Concurrency: Challenges and Solutions from Hardware to JVM
Architect
Architect
May 2, 2025 · Backend Development

Understanding and Implementing LMAX Disruptor in Java

This article introduces the high‑performance LMAX Disruptor library, explains its core concepts such as Ring Buffer, Sequence, Sequencer, and Wait Strategy, and provides a step‑by‑step Java demo with complete code to build a producer‑consumer message queue.

DisruptorMessage Queuebackend-development
0 likes · 11 min read
Understanding and Implementing LMAX Disruptor in Java
Cognitive Technology Team
Cognitive Technology Team
May 2, 2025 · Backend Development

Stopping Java Threads: interrupt, volatile flag, and combined approaches

This article explains three methods for safely terminating Java threads—using the interrupt mechanism, a volatile boolean flag, and a combination of both—detailing their principles, code examples, advantages, disadvantages, and a comparative summary to guide developers in choosing the appropriate technique.

Thread Interruptionjavamultithreading
0 likes · 8 min read
Stopping Java Threads: interrupt, volatile flag, and combined approaches
Cognitive Technology Team
Cognitive Technology Team
May 1, 2025 · Backend Development

10 Tips and Tricks for Using ExecutorService in Java

This article presents ten practical tips for Java developers on naming thread‑pool threads, dynamically changing thread names, safely shutting down executors, handling interruptions, bounding queue sizes, proper exception handling, monitoring wait times, preserving client stack traces, preferring CompletableFuture, and using SynchronousQueue with ThreadPoolExecutor.

ExecutorServiceThreadPoolbest practices
0 likes · 15 min read
10 Tips and Tricks for Using ExecutorService in Java
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
May 1, 2025 · Backend Development

Master Spring Boot TargetSource: Custom, HotSwappable, Pooled & More

This article explains Spring Boot's TargetSource mechanism, covering the default SingletonTargetSource and demonstrating how to implement custom, hot‑swappable, pooled, prototype, and thread‑local TargetSources with full code examples and execution results, helping developers manage bean instances dynamically in AOP proxies.

TargetSourceaopbackend-development
0 likes · 8 min read
Master Spring Boot TargetSource: Custom, HotSwappable, Pooled & More