Tagged articles

Java

5000 articles · Page 23 of 50
Java Captain
Java Captain
May 15, 2025 · Backend Development

Automating CRUD Operations with MyBatisPlus and a Generic BaseController in Spring Boot

This article demonstrates how to automate CRUD functionality in a Spring Boot application by adding MyBatisPlus, creating utility methods for query building and reflection, implementing a generic BaseController, configuring pagination support, and extending the controller for specific entities, providing a reusable RESTful API template.

BaseControllerCRUDJava
0 likes · 11 min read
Automating CRUD Operations with MyBatisPlus and a Generic BaseController in Spring Boot
Java Captain
Java Captain
May 15, 2025 · Backend Development

Generating Temperature Line Charts in Excel with Apache POI (Java)

This tutorial demonstrates how to add Apache POI dependencies via Maven and use Java code to create an Excel workbook containing a multi‑series temperature line chart, including custom font sizes for titles and axes, and finally export the file to disk.

Apache POIData VisualizationExcel
0 likes · 8 min read
Generating Temperature Line Charts in Excel with Apache POI (Java)
JD Cloud Developers
JD Cloud Developers
May 15, 2025 · Cloud Native

How Sentinel Empowers Cloud‑Native Traffic Governance and Resilience

This article introduces Sentinel, a cloud‑native flow‑control component born from Alibaba's ecosystem, explains its resource‑based rule model, core implementation—including rule‑control chain, datasource, and dashboard—and discusses practical deployment considerations and extension strategies for Java microservices.

JavaSentinelcloud-native
0 likes · 20 min read
How Sentinel Empowers Cloud‑Native Traffic Governance and Resilience
Programmer DD
Programmer DD
May 15, 2025 · Backend Development

Boost Spring Boot Performance 3× with JVM Tuning: Practical Parameters

After caching, indexing, and async optimizations still leave a Spring Boot REST API sluggish, this guide shows how fine‑tuning JVM options—such as enabling G1GC, adjusting pause targets, compressing class metadata, shrinking thread stacks, and pre‑touching memory—can triple response speed without changing application code.

G1GCJVMJava
0 likes · 7 min read
Boost Spring Boot Performance 3× with JVM Tuning: Practical Parameters
Lin is Dream
Lin is Dream
May 15, 2025 · Backend Development

How to Build a Pluggable Operation Log System with AOP and Annotations in Java

This article explains a complete, reusable solution for recording operation logs in Java backend applications using Spring AOP, custom annotations, callback interfaces, and a user‑adapter to bridge third‑party logging libraries with the main program, enabling flexible storage and auditing.

AnnotationCallbackJava
0 likes · 8 min read
How to Build a Pluggable Operation Log System with AOP and Annotations in Java
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
May 15, 2025 · Fundamentals

Mastering Thread‑Safe Classes in Java: 6 Proven Design Strategies

This article explains what makes a class thread‑safe in Java, illustrates common race‑condition pitfalls with sample code, and presents six practical design strategies—including stateless, immutable, synchronized, volatile, concurrent collections, thread‑confinement, and defensive copying—to help developers build robust, high‑performance concurrent applications.

ConcurrencyDesign PatternsImmutable
0 likes · 11 min read
Mastering Thread‑Safe Classes in Java: 6 Proven Design Strategies
Java Architect Essentials
Java Architect Essentials
May 14, 2025 · Backend Development

Master SpringBoot @RequestHeader: Simplify HTTP Header Binding

This article explains how SpringBoot's @RequestHeader annotation automatically binds HTTP request headers to controller method parameters, reducing boilerplate code, supporting default values and optional headers, and improving readability and development efficiency with clear code examples.

@RequestHeaderJavaSpringBoot
0 likes · 6 min read
Master SpringBoot @RequestHeader: Simplify HTTP Header Binding
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.

EL expressionJavaList
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.

AOPBackend DevelopmentFeign
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.

IDEIntelliJJava
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.

JavaObject InstantiationObjenesis
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 UpdateJavaPostgreSQL
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.

DistributedLockJavaRateLimiting
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.

Data IsolationJavaMulti‑tenant
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.

JVMJavaJimple
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.

DTOJavacode 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.

JavaOptimizationPerformance
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.

ConcurrencyExecutorJava
0 likes · 30 min read
Understanding Java Thread Pools: Design, Implementation, and Usage
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.

Backend DevelopmentDynamic RefreshJava
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 ClassJavainheritance
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.

Functional InterfaceJavaLambda
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.

JavaMavenbuild
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.

Backend DevelopmentConversionServiceJava
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 redirectJavaOpen Redirect
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.

AOPFeignJava
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.

EmbeddedJDBCJUnit
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.

Backend DevelopmentDTOJava
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 SecurityAnnotationEncryption
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 CommonsCollectionsJava
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.

Distributed LockJavaRedis
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.

GraalVMJavaSpring
0 likes · 7 min read
Comprehensive Overview of Spring Ecosystem Upgrades: Spring 6 Core Features, Spring Boot 3.0 Breakthroughs, and Migration Roadmap
Shepherd Advanced Notes
Shepherd Advanced Notes
May 8, 2025 · Backend Development

Missing Parameter Validation Can Crash a Spring Boot Service – A Complete Guide

A real‑world incident where an unchecked null request parameter caused a full‑table query, massive memory usage and OOM is examined, then Spring Boot’s validation framework—including manual checks, annotation‑driven constraints, nested and group validation, and global exception handling—is demonstrated step‑by‑step with code samples.

JavaSpring BootValidation
0 likes · 18 min read
Missing Parameter Validation Can Crash a Spring Boot Service – A Complete Guide
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.

ConcurrencyJavaPerformance
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.

Backend DevelopmentControllerJava
0 likes · 8 min read
Master Spring Boot 3 Controllers: Real‑World Cases & Advanced Techniques
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.

ConcurrencyCountDownLatchCyclicBarrier
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.

JavaOptimizationPerformance
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 integrationJavaMCP
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.

BrokerJavaMessage Queue
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.

@TransactionalJavaRedis
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.

GraalVMJavaPrometheus
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.

AbstractQueuedSynchronizerConcurrencyJava
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.

JavaManual AcknowledgmentMessage Deduplication
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 SecurityAnnotationJava
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.

ConcurrencyCyclicBarrierJava
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.

JavaPerformanceStackTrace
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.

Backend DevelopmentJavaStackTrace
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.

AQSConcurrencyJava
0 likes · 11 min read
Understanding Java's AbstractQueuedSynchronizer (AQS): Core Components, Design, and Practical Applications
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.

ConcurrencyCountDownLatchJava
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 TableJava
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.

ConcurrencyDataStructureJava
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.

AnnotationBest PracticesJava
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.

CompilationJVMJava
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.

CASConcurrencyJava
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 paginationExcel ExportJVM Tuning
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.

Best PracticesConcurrencyGarbage Collection
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.

CORSJavaSpringBoot
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.

JavaMessage Queuedistributed systems
0 likes · 16 min read
Why Rebuild a Job Scheduler? Inside a Lightweight Distributed Timing Framework
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.

ActivitiBPMNJava
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.

ConcurrencyJavaMemoryManagement
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 DevelopmentJavaResilience4j
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.

Best PracticesConcurrencyJava
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.

ConcurrencyDeadlockJava
0 likes · 23 min read
Analyzing and Resolving Uninterruptible Thread States During System Suspend