Tagged articles
5000 articles
Page 48 of 50
Selected Java Interview Questions
Selected Java Interview Questions
Dec 5, 2023 · Backend Development

Implementing Data Isolation in Java Applications Using MyBatis Interceptor and Custom Annotations

This article describes a practical approach to achieve environment‑based data isolation in Java services by adding an env field to tables, using a MyBatis interceptor to rewrite SQL, and defining custom annotations with AOP to control the isolation logic, while sharing code snippets and lessons learned.

Custom AnnotationData IsolationMyBatis
0 likes · 9 min read
Implementing Data Isolation in Java Applications Using MyBatis Interceptor and Custom Annotations
Architecture Digest
Architecture Digest
Dec 5, 2023 · Backend Development

Common Java Backend Code Smells and Bugs: Real‑World Cases and Fixes

The article presents a collection of typical Java backend coding mistakes—ranging from misused ternary operators and poor parameter validation to logging pitfalls, dead code, improper exception handling, AOP self‑invocation issues, Redis resilience problems, and Excel file upload bugs—along with concrete examples, images, and corrected code snippets to help developers avoid and fix them.

BackendBugFixesCodeQuality
0 likes · 12 min read
Common Java Backend Code Smells and Bugs: Real‑World Cases and Fixes
macrozheng
macrozheng
Dec 5, 2023 · Backend Development

Why Can Spring Boot Fat JARs Run Directly? Uncover the Secrets

This article explains how Spring Boot packages applications as executable Fat JARs, embeds a web server, uses a special launcher, and defines a main class so the JAR can be run with a simple java -jar command, eliminating the need for separate deployment servers.

Fat JarSpring Bootembedded server
0 likes · 7 min read
Why Can Spring Boot Fat JARs Run Directly? Uncover the Secrets
Code Ape Tech Column
Code Ape Tech Column
Dec 5, 2023 · Backend Development

Design and Implementation of a Java Rule Engine with AND/OR Logic

This article explains how to design and refactor a Java rule engine that supports short‑circuit AND/OR logic, demonstrates the abstraction of rules, shows concrete implementations, and provides a chainable service for executing combined rule sets with example code.

AND/OR LogicBackendCode Refactoring
0 likes · 8 min read
Design and Implementation of a Java Rule Engine with AND/OR Logic
Java Architect Essentials
Java Architect Essentials
Dec 4, 2023 · Fundamentals

Top Java Features Since Java 8 Every Developer Should Know

This article surveys the most popular Java language enhancements introduced from Java 8 through Java 20—including var type inference, switch expressions, text blocks, records, pattern‑matching instanceof, sealed classes, and improved NullPointerExceptions—providing concise explanations and visual examples to help developers decide which features to adopt during migration.

fundamentalsjavajava17
0 likes · 7 min read
Top Java Features Since Java 8 Every Developer Should Know
Architect
Architect
Dec 4, 2023 · Backend Development

Mastering Unified Exception Handling in Spring: Clean Code, Better Readability

This article analyzes the problem of scattered try‑catch blocks in Java services, explains why per‑controller exception methods are cumbersome, and presents a unified exception handling solution using @ControllerAdvice, custom Assert utilities, enum‑based error codes, and environment‑aware response formatting, all illustrated with concrete code examples and test results.

AssertBackendException Handling
0 likes · 24 min read
Mastering Unified Exception Handling in Spring: Clean Code, Better Readability
Architecture Digest
Architecture Digest
Dec 4, 2023 · Operations

Using Arthas to Diagnose High CPU Usage in a Java Application

This tutorial demonstrates how to employ the open‑source Java diagnostic tool Arthas to quickly locate and analyze a high‑CPU problem in a running JVM by leveraging commands such as dashboard, thread, jad, watch, and ognl, complete with code examples and step‑by‑step instructions.

ArthasCPU profilingPerformance debugging
0 likes · 7 min read
Using Arthas to Diagnose High CPU Usage in a Java Application
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Dec 4, 2023 · Cloud Computing

Master Serverless with Spring Cloud Function: A Hands‑On Guide

This tutorial introduces Spring Cloud Function, explains its core concepts and benefits for serverless development, and walks through a complete example—including configuration, code snippets, HTTP endpoints, function composition, custom routing, and deployment—so readers can quickly build and test function‑based applications.

ServerlessSpring BootSpring Cloud Function
0 likes · 8 min read
Master Serverless with Spring Cloud Function: A Hands‑On Guide
Su San Talks Tech
Su San Talks Tech
Dec 4, 2023 · Fundamentals

Can You Build a HashMap from Scratch? A Step‑by‑Step Java Guide

This article walks you through the fundamentals of hash tables, explains bucket arrays and hash functions, discusses collision resolution strategies, and provides a complete Java implementation of a simple HashMap called ThirdHashMap with code, tests, and performance notes.

Data StructuresHashMapcoding interview
0 likes · 13 min read
Can You Build a HashMap from Scratch? A Step‑by‑Step Java Guide
FunTester
FunTester
Dec 3, 2023 · Backend Development

Why Your Java App’s CPU Spikes: Mastering C1/C2 JIT Threads

This article explains how HotSpot's C1 and C2 JIT compiler threads work, why they can consume excessive CPU, and provides practical JVM tuning options—including tiered compilation, code‑cache sizing, and compiler‑thread adjustments—to mitigate performance issues.

C1C2HotSpot
0 likes · 11 min read
Why Your Java App’s CPU Spikes: Mastering C1/C2 JIT Threads
Efficient Ops
Efficient Ops
Dec 3, 2023 · Backend Development

Why Our Redis Cluster Pipeline Deadlocked: Thread Locks Explained

This article walks through a production incident where a Redis Cluster pipeline caused Dubbo threads to block and eventually deadlock, detailing the root‑cause analysis, code inspection, and verification steps using jstack, jmap, and MAT to confirm the deadlock and propose fixes.

JedisPipelinedeadlock
0 likes · 13 min read
Why Our Redis Cluster Pipeline Deadlocked: Thread Locks Explained
Architect
Architect
Dec 3, 2023 · Backend Development

Implementing Automatic Idempotency in Spring Boot with Redis and Interceptors

This article explains how to achieve automatic request idempotency in Spring Boot applications by using Redis for token storage, custom @AutoIdempotent annotation, and a web interceptor that validates tokens, providing code examples, configuration steps, and testing procedures.

InterceptorSpring Bootjava
0 likes · 12 min read
Implementing Automatic Idempotency in Spring Boot with Redis and Interceptors
MaGe Linux Operations
MaGe Linux Operations
Dec 3, 2023 · Backend Development

Master RabbitMQ: Core Concepts, Programming Models, and Spring Boot Integration

This guide explains RabbitMQ fundamentals—including brokers, virtual hosts, connections, channels, exchanges, queues, producers, and consumers—covers common messaging patterns, provides step‑by‑step Java code for creating connections, declaring exchanges and queues, publishing and consuming messages, handling acknowledgments and confirmations, and shows how to integrate RabbitMQ with Spring Boot.

AMQPMessage QueueMessaging Patterns
0 likes · 17 min read
Master RabbitMQ: Core Concepts, Programming Models, and Spring Boot Integration
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Dec 3, 2023 · Backend Development

Master Custom HandlerMapping in Spring Boot: Header‑Based Routing with getCustomMethodCondition

This tutorial explains how to extend Spring MVC's HandlerMapping by implementing a custom RequestCondition that matches requests based on an x-token header and a custom @AKF annotation, covering code implementation, configuration, testing, and the underlying request‑matching mechanism.

Custom RequestConditionHandlerMappingHeader Authentication
0 likes · 7 min read
Master Custom HandlerMapping in Spring Boot: Header‑Based Routing with getCustomMethodCondition
Architect's Tech Stack
Architect's Tech Stack
Dec 2, 2023 · Backend Development

Drawbacks of the Spring Framework: Performance, Configuration Complexity, Learning Curve, and More

This article examines several drawbacks of the Spring framework—including performance overhead from reflection and proxies, complex configuration, steep learning curve, over‑reliance on the Spring ecosystem, hidden “magic” features, version compatibility challenges, and misuse of dependency injection—illustrated with Java code examples.

Configurationdependency-injectionjava
0 likes · 8 min read
Drawbacks of the Spring Framework: Performance, Configuration Complexity, Learning Curve, and More
Selected Java Interview Questions
Selected Java Interview Questions
Dec 2, 2023 · Backend Development

Understanding HashMap Resize Behavior and the Revision from Expansion Count to Resize Count in Alibaba's Developer Manual

This article explains the recent correction in Alibaba's developer manual that replaces the ambiguous "expansion count" of HashMap with the precise "resize count", details the conditions under which HashMap triggers resize during the first put operation, and shows why storing 1024 elements in JDK 1.8 results in eight resize calls.

BackendData StructuresJDK8
0 likes · 9 min read
Understanding HashMap Resize Behavior and the Revision from Expansion Count to Resize Count in Alibaba's Developer Manual
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Dec 2, 2023 · Backend Development

Mastering Spring’s @Import: Three Powerful Ways to Load Configurations

This guide explains Spring’s @Import annotation, covering three import strategies—direct class array, ImportSelector, and ImportBeanDefinitionRegistrar—through detailed code examples, usage scenarios, and important version notes, helping developers improve configuration management, code maintainability, and readability in backend Java applications.

ConfigurationImport Annotationbackend-development
0 likes · 6 min read
Mastering Spring’s @Import: Three Powerful Ways to Load Configurations
Architect
Architect
Dec 1, 2023 · Backend Development

Implementing a Process Pool with Apache Commons GenericObjectPool in Java

This article explains how to use Apache Commons GenericObjectPool to implement a reusable process pool in Java, covering the underlying concepts, required dependencies, custom factory implementation, pool configuration, and example code for borrowing and returning pooled objects.

BackendGenericObjectPooljava
0 likes · 9 min read
Implementing a Process Pool with Apache Commons GenericObjectPool in Java
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Dec 1, 2023 · Backend Development

Resilience4j Essentials: Circuit Breaker, TimeLimiter, Bulkhead & RateLimiter

This article introduces Resilience4j, a lightweight fault‑tolerance library for Spring Boot, explaining its core decorators—CircuitBreaker, TimeLimiter, Bulkhead, and RateLimiter—along with configuration examples, annotation usage, fallback handling, and practical test code to improve system stability and resilience.

Spring Bootcircuit breakerfault tolerance
0 likes · 16 min read
Resilience4j Essentials: Circuit Breaker, TimeLimiter, Bulkhead & RateLimiter
JD Cloud Developers
JD Cloud Developers
Nov 30, 2023 · Backend Development

How to Extend MyBatis-Plus with Custom CRUD Methods and SQL Injection

Learn how to leverage MyBatis-Plus's built-in CRUD capabilities, create custom SQL methods like SelectByErp, integrate them via a custom SqlInjector, and modify existing operations such as AlwaysUpdateSomeColumnById and UpdateById for sharding scenarios, enabling reusable and efficient data access across your backend.

CRUDORMSQL injection
0 likes · 9 min read
How to Extend MyBatis-Plus with Custom CRUD Methods and SQL Injection
Architect's Tech Stack
Architect's Tech Stack
Nov 30, 2023 · Backend Development

Spring Boot Startup Optimization Practices

This article presents a comprehensive set of techniques—including lazy initialization, deferred database connections, selective auto‑configuration, logging level tuning, JVM parameter tweaks, dependency pruning, bean optimization, JIT settings, class‑path scanning reduction, and DevTools restart—to significantly shorten Spring Boot application startup time, each illustrated with clear code examples.

javaperformancestartup optimization
0 likes · 7 min read
Spring Boot Startup Optimization Practices
Code Ape Tech Column
Code Ape Tech Column
Nov 30, 2023 · Backend Development

Performance Comparison of Spring Boot on JVM vs GraalVM Native Image

This article evaluates the startup speed, memory consumption, and request‑handling performance of a simple Spring Boot "Hello World" service when run on the traditional JVM compared with a GraalVM‑compiled native binary, using a MacBook M1 and Bombardier for load testing.

MicroservicesSpring Bootbenchmark
0 likes · 9 min read
Performance Comparison of Spring Boot on JVM vs GraalVM Native Image
Tencent Cloud Developer
Tencent Cloud Developer
Nov 30, 2023 · Backend Development

Tutorial: Building a Spring Boot CRUD Application with Tencent Hunyuan Large Model API and MySQL

This tutorial demonstrates how to prompt Tencent Hunyuan’s large‑model API to generate a Spring Boot project configured for MySQL, create a user table, and implement full JPA‑based CRUD layers—including entity, repository, service, and REST controller—while addressing common null‑field errors and testing the endpoints.

APICRUDSpring Boot
0 likes · 14 min read
Tutorial: Building a Spring Boot CRUD Application with Tencent Hunyuan Large Model API and MySQL
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Nov 30, 2023 · Backend Development

Mastering Spring Cloud OpenFeign: Configuration, Customization, and Best Practices

This guide walks through Spring Cloud OpenFeign's core concepts, enabling steps, custom configurations, timeout handling, logging, retry mechanisms, interceptors, fallback strategies, caching, inheritance, compression, and reactive alternatives, providing developers with a comprehensive reference for building robust microservice clients.

ConfigurationFeign clientMicroservices
0 likes · 12 min read
Mastering Spring Cloud OpenFeign: Configuration, Customization, and Best Practices
Java Architect Essentials
Java Architect Essentials
Nov 29, 2023 · Backend Development

Performance Tuning of a Java Backend Service: From 50/s to 500/s Through Profiling, Thread‑Pool, and SQL Optimization

The article details a step‑by‑step investigation and optimization of a Java backend service that initially delivered only 50 requests per second under load, covering profiling, slow‑SQL fixes, thread‑pool tuning, JVM memory adjustments, and Spring bean creation overhead to approach the target 500 req/s.

Profilingjavaperformance
0 likes · 14 min read
Performance Tuning of a Java Backend Service: From 50/s to 500/s Through Profiling, Thread‑Pool, and SQL Optimization
macrozheng
macrozheng
Nov 29, 2023 · Backend Development

Why BigDecimal Is the Safest Choice for Money Calculations in Java

This article explains why using Java's BigDecimal for monetary values ensures precise, immutable, and correctly rounded calculations, compares it with float, double, long, and int, and provides best‑practice code examples for constructing, computing, and formatting financial numbers.

BigDecimalMonetary Calculationsjava
0 likes · 8 min read
Why BigDecimal Is the Safest Choice for Money Calculations in Java
Java High-Performance Architecture
Java High-Performance Architecture
Nov 29, 2023 · Backend Development

Understanding MyBatis: A Complete Architecture Overview and Workflow

This article provides a comprehensive, step‑by‑step overview of MyBatis’s architecture—including its three‑layer design, configuration parsing, proxy generation, and SQL execution process—while highlighting key features such as SQL mapping, dynamic SQL, parameter and result mapping, transaction management, connection‑pool integration, and second‑level caching.

MyBatisORMSQL Mapping
0 likes · 9 min read
Understanding MyBatis: A Complete Architecture Overview and Workflow
Java Architect Essentials
Java Architect Essentials
Nov 28, 2023 · Backend Development

Various Ways to Send HTTP Requests in Java

This article introduces multiple Java approaches for sending HTTP GET and POST requests, covering the built‑in HttpURLConnection class, Apache HttpClient, Square's OkHttp, and Spring's RestTemplate, with step‑by‑step explanations and complete code examples for each method.

BackendHTTPHttpClient
0 likes · 8 min read
Various Ways to Send HTTP Requests in Java
JD Cloud Developers
JD Cloud Developers
Nov 28, 2023 · Backend Development

Choosing the Right Java Expression Engine: Performance, Security, and Community Insights

This article provides a comprehensive overview and comparative analysis of popular Java expression engines—including AviatorScript, MVEL, OGNL, SpEL, QLExpress, JEXL, JUEL, and Janino—covering their features, community support, size, performance benchmarks, security settings, usage cases, and syntax differences to guide developers in selecting the most suitable engine for their projects.

EvaluationExpression Enginejava
0 likes · 23 min read
Choosing the Right Java Expression Engine: Performance, Security, and Community Insights
IT Services Circle
IT Services Circle
Nov 28, 2023 · Backend Development

Comprehensive Java Interview Guide: Basics, Collections, Concurrency, Spring Boot, MySQL, and Network Concepts

This article provides a thorough overview of Java interview topics, covering core language fundamentals, collection frameworks, concurrency mechanisms, Spring Boot transaction handling, database indexing strategies, and network protocol comparisons, all presented in clear English with code examples and diagrams.

NetworkingSpring Bootconcurrency
0 likes · 19 min read
Comprehensive Java Interview Guide: Basics, Collections, Concurrency, Spring Boot, MySQL, and Network Concepts
Code Ape Tech Column
Code Ape Tech Column
Nov 28, 2023 · Backend Development

Understanding CQRS and Implementing It with Spring Microservices

This article explains the CQRS architectural pattern, its benefits and challenges, and provides a step‑by‑step guide to implementing CQRS, event sourcing, and asynchronous communication with Spring Boot, Axon, and Apache Kafka in microservice environments.

CQRSEvent SourcingMicroservices
0 likes · 13 min read
Understanding CQRS and Implementing It with Spring Microservices
Su San Talks Tech
Su San Talks Tech
Nov 28, 2023 · Backend Development

Why Hutool Is the Must-Have Java Utility Library for Faster Development

This article introduces Hutool, a comprehensive Java utility library that consolidates common functions such as file handling, encryption, HTTP, and scheduling into easy-to-use modules, showcases key components like SecureUtil, HtmlUtil, and CronUtil with code examples, and highlights its benefits for reducing development effort.

HTML SanitizationSchedulingUtility Library
0 likes · 6 min read
Why Hutool Is the Must-Have Java Utility Library for Faster Development
Architect
Architect
Nov 27, 2023 · Backend Development

Why 500 req/s Became 50 req/s: A Deep Dive into Spring Bean Creation Bottlenecks

A ToB system that seemed able to handle 500 requests per second stalled at 50 req/s due to hidden lock contention in prototype‑scoped Spring beans, slow SQL updates, excessive logging, and thread‑pool misconfiguration, prompting a step‑by‑step performance investigation and multiple optimizations.

Load Testingjavaoptimization
0 likes · 16 min read
Why 500 req/s Became 50 req/s: A Deep Dive into Spring Bean Creation Bottlenecks
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Nov 27, 2023 · Fundamentals

Understanding the Bridge Design Pattern: Concepts, Java Implementation, and Use Cases

This article explains the Bridge design pattern, a structural pattern that separates abstraction from implementation to avoid class explosion, provides detailed Java code examples, UML diagrams, advantages, disadvantages, and typical scenarios for applying the pattern in software development.

Bridge PatternDesign PatternsObject-Oriented
0 likes · 7 min read
Understanding the Bridge Design Pattern: Concepts, Java Implementation, and Use Cases
Top Architect
Top Architect
Nov 27, 2023 · Backend Development

Performance Comparison of String Concatenation Using '+' vs StringBuilder in Java

This article evaluates the execution time and bytecode differences of simple and looped string concatenation in Java, comparing the '+' operator with explicit StringBuilder usage, and concludes that '+' is fine for single concatenations while StringBuilder dramatically outperforms '+' in iterative scenarios.

String concatenationjavaperformance
0 likes · 9 min read
Performance Comparison of String Concatenation Using '+' vs StringBuilder in Java
Architect's Guide
Architect's Guide
Nov 27, 2023 · Backend Development

Unified Exception Handling in Spring Boot: Design, Implementation, and Best Practices

This article provides a comprehensive guide to designing and implementing a unified exception handling framework in Spring Boot, covering the use of @ControllerAdvice, custom assertion interfaces, enum‑based error codes, standardized response structures, and practical testing scenarios to improve code readability and robustness.

BackendException Handlingassertions
0 likes · 20 min read
Unified Exception Handling in Spring Boot: Design, Implementation, and Best Practices
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Nov 27, 2023 · Fundamentals

27 Essential Java Programming Principles from Effective Java

This article distills the classic "Effective Java" book into twenty‑seven practical programming principles covering object construction, static factory methods, builders, enums for singletons, resource management, equals/hashCode, generics, method design, exception handling, and general coding best practices, providing clear guidance for Java developers.

Design PatternsEffective Javabest practices
0 likes · 21 min read
27 Essential Java Programming Principles from Effective Java
Alibaba Cloud Developer
Alibaba Cloud Developer
Nov 27, 2023 · Backend Development

Boost Java Logging Performance: Practical Tips and Configurations

This article explores Java logging performance by analyzing the logging pipeline, presenting measurements of log size impact, and offering concrete optimization techniques such as reducing log payload, compressing logger and exception output, using asynchronous logging, and configuring rolling files to minimize both visible business overhead and hidden system costs.

Asyncjavalog4j2
0 likes · 20 min read
Boost Java Logging Performance: Practical Tips and Configurations
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Nov 25, 2023 · Backend Development

Master Spring Boot YAML: Configure Complex Objects with Ease

This article explains how to use Spring Boot's YAML configuration files to define and manage simple properties, collections, maps, nested objects, and complex data structures, providing code examples and a complete sample to help developers efficiently handle intricate configuration scenarios.

ConfigurationSpring BootYAML
0 likes · 6 min read
Master Spring Boot YAML: Configure Complex Objects with Ease
Su San Talks Tech
Su San Talks Tech
Nov 25, 2023 · Backend Development

Master RabbitMQ: From Core Concepts to Real-World Implementation

This comprehensive guide walks you through RabbitMQ fundamentals, installation on macOS, core AMQP concepts, exchange types, queue patterns, evaluation criteria, advanced features like TTL and dead‑letter queues, and provides ready‑to‑run Java code examples for producers and consumers.

AMQPRabbitMQjava
0 likes · 30 min read
Master RabbitMQ: From Core Concepts to Real-World Implementation
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Nov 25, 2023 · Backend Development

Understanding Spring’s FactoryBean and MyBatis Integration: From BeanFactory to MapperFactoryBean

This article explains how Spring’s FactoryBean mechanism enables seamless integration with MyBatis by detailing the roles of BeanFactory, SqlSessionFactoryBean, MapperScannerConfigurer, and MapperFactoryBean, and provides annotated code examples and XML configuration to illustrate the underlying process and its benefits for transaction management and thread safety.

FactoryBeanIntegrationMyBatis
0 likes · 13 min read
Understanding Spring’s FactoryBean and MyBatis Integration: From BeanFactory to MapperFactoryBean
Top Architecture Tech Stack
Top Architecture Tech Stack
Nov 24, 2023 · Backend Development

Applying ASM Bytecode Manipulation in cglib and Fastjson

This article demonstrates how ASM is used to generate dynamic proxies with cglib and to create high‑performance JSON deserializers in Fastjson, providing code examples, explanation of the underlying bytecode generation, and practical tips for developers.

ASMDynamic Proxybytecode
0 likes · 8 min read
Applying ASM Bytecode Manipulation in cglib and Fastjson
Java Architect Essentials
Java Architect Essentials
Nov 23, 2023 · Backend Development

Overview of Spring Assertion, Utility, Reflection and AOP Helper Methods

This article presents a concise reference of Spring's Assert class, common ObjectUtils, StringUtils, CollectionUtils, file and stream copy helpers, as well as ReflectionUtils and AOP utilities, illustrating their purpose, typical usage scenarios, and providing ready‑to‑copy code snippets for Java backend development.

BackendReflectionassertions
0 likes · 11 min read
Overview of Spring Assertion, Utility, Reflection and AOP Helper Methods
Top Architect
Top Architect
Nov 23, 2023 · Backend Development

Understanding Java Class Loading Mechanism and Tomcat’s ClassLoader Design

This article explains the Java class loading mechanism, the parent‑delegation model, how it can be broken, and then details Tomcat’s custom classloader hierarchy—including CommonClassLoader, CatalinaClassLoader, SharedClassLoader, and WebappClassLoader—showing why Tomcat deviates from the standard delegation model.

Parent DelegationTomcatclass loading
0 likes · 15 min read
Understanding Java Class Loading Mechanism and Tomcat’s ClassLoader Design
Architect's Journey
Architect's Journey
Nov 23, 2023 · Backend Development

Building a DDD‑Based Four‑Layer Microservice Architecture with the D3boot Framework

The article walks through a DDD‑inspired four‑layer microservice architecture, explains how an application SDK enables RPC communication across services, details each architectural layer, and showcases the open‑source D3boot framework that bundles reusable base components, BOM management, and SaaS‑ready features for rapid backend development.

DDDMicroservicesSDK
0 likes · 10 min read
Building a DDD‑Based Four‑Layer Microservice Architecture with the D3boot Framework
Architecture Digest
Architecture Digest
Nov 23, 2023 · Backend Development

Using Redisson Distributed Locks with Custom Annotations in Java

This article explains how to apply Redisson's distributed lock in Java, demonstrates the basic lock and tryLock APIs, shows how to create a custom @DistributedLock annotation and an AOP aspect to handle locking automatically, and provides a practical usage example with two services.

annotationaopconcurrency
0 likes · 8 min read
Using Redisson Distributed Locks with Custom Annotations in Java
Architect's Tech Stack
Architect's Tech Stack
Nov 23, 2023 · Backend Development

Java 21 Deprecates Windows 32‑bit x86 Port and Dynamic Agent Loading

The article explains why Java 21 deprecates the Windows 32‑bit x86 port and dynamic agent loading, describes the technical reasons, shows the new configuration options and related warnings, and discusses the impact on virtual threads and best practices for avoiding deprecated APIs.

Dynamic AgentsJDKVirtual Threads
0 likes · 11 min read
Java 21 Deprecates Windows 32‑bit x86 Port and Dynamic Agent Loading
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Nov 23, 2023 · Backend Development

Mastering Spring’s Type Conversion: Services, Custom Converters, and Best Practices

This article explains Spring’s type conversion system, introduces the core conversion service interfaces, demonstrates how to use GenericConversionService, DefaultConversionService, and WebConversionService, and provides step‑by‑step examples of custom converters, factories, generic converters, and their registration in Spring MVC.

Spring Frameworkjavaspring
0 likes · 13 min read
Mastering Spring’s Type Conversion: Services, Custom Converters, and Best Practices
Sohu Tech Products
Sohu Tech Products
Nov 22, 2023 · Fundamentals

Mastering the Chain of Responsibility: From SOLID Principles to Spring Integration

This article explains the seven SOLID design principles, introduces the Chain of Responsibility pattern, demonstrates its application to a video‑review workflow with step‑by‑step Java code, and shows how to evolve the implementation from a basic chain to a Spring‑managed, fully open‑closed solution.

Chain of ResponsibilityDesign PatternsSOLID
0 likes · 13 min read
Mastering the Chain of Responsibility: From SOLID Principles to Spring Integration
Sohu Tech Products
Sohu Tech Products
Nov 22, 2023 · Backend Development

Optimizing a Real‑Time Keyword Matching Service with Aho‑Corasick and Double‑Array Trie

By replacing the naïve double‑loop matcher with a Double‑Array Trie‑based Aho‑Corasick automaton and refactoring the system into a layered name‑and‑data microservice architecture that shards the keyword dictionary and rebuilds the automaton only on version changes, the real‑time keyword‑matching service reduced latency from seconds to milliseconds even at thousands of QPS.

Aho-CorasickMicroservicesTrie
0 likes · 17 min read
Optimizing a Real‑Time Keyword Matching Service with Aho‑Corasick and Double‑Array Trie
Top Architect
Top Architect
Nov 22, 2023 · Information Security

Designing Microservice Permission Control with Shiro and Redis Session Sharing

This article explains how to design microservice permission control using Apache Shiro, sharing session data via Redis, outlines failed approaches, presents a workable solution with custom cache and session managers, and provides complete code examples for realms, configuration, and login flow.

AuthorizationShiroSpringBoot
0 likes · 24 min read
Designing Microservice Permission Control with Shiro and Redis Session Sharing
Architect
Architect
Nov 22, 2023 · Backend Development

Mastering CompletableFuture: Boosting Asynchronous Performance in Java

This article walks through the limitations of Java's Future, introduces CompletableFuture's richer asynchronous API, and demonstrates step‑by‑step how to refactor a shop‑detail page using parallel tasks, custom thread pools, and composition patterns to cut response time from seconds to under two.

AsynchronousCompletableFutureconcurrency
0 likes · 14 min read
Mastering CompletableFuture: Boosting Asynchronous Performance in Java
JD Retail Technology
JD Retail Technology
Nov 22, 2023 · Fundamentals

Understanding Java Class File Structure and JVM Execution Process

This article explains the Java class file format, including its magic number, version, constant pool, access flags, fields, methods, and attributes, and then details how the JVM loads, verifies, prepares, resolves, and initializes classes, manages object memory layout, and executes bytecode using a stack‑based interpreter.

JVMMemoryManagementbytecode
0 likes · 21 min read
Understanding Java Class File Structure and JVM Execution Process
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Nov 22, 2023 · Fundamentals

Understanding the Five Creational Design Patterns

This article provides a comprehensive overview of the five creational design patterns—Singleton, Abstract Factory, Factory Method, Builder, and Prototype—explaining their concepts, UML structures, implementation details, typical use cases, advantages, disadvantages, and includes Java code examples and diagrams.

Creational PatternsDesign PatternsSoftware Architecture
0 likes · 9 min read
Understanding the Five Creational Design Patterns
IT Services Circle
IT Services Circle
Nov 21, 2023 · Fundamentals

LeetCode 42 – Trapping Rain Water: Problem Overview and Three O(n) Solution Techniques (Two‑Pointer, Prefix‑Max, Monotonic Stack)

This article explains LeetCode problem 42 “Trapping Rain Water”, detailing the problem statement, example, and three efficient O(n) solution approaches—two‑pointer, prefix‑max arrays, and a monotonic stack—each accompanied by complete Java implementations and analysis of their logic.

LeetCodeMonotonic StackPrefix Max
0 likes · 7 min read
LeetCode 42 – Trapping Rain Water: Problem Overview and Three O(n) Solution Techniques (Two‑Pointer, Prefix‑Max, Monotonic Stack)
Architecture Digest
Architecture Digest
Nov 21, 2023 · Backend Development

Understanding Why HashMap.keySet() Traverses Twice in Java

This article explains the internal mechanics of HashMap traversal in Java, comparing iterator, keySet, entrySet and stream approaches, and reveals why using keySet results in two passes—once to obtain an iterator and once to fetch values—by examining the underlying KeySet, KeyIterator, and HashIterator implementations.

HashMapIteratorjava
0 likes · 8 min read
Understanding Why HashMap.keySet() Traverses Twice in Java
Java High-Performance Architecture
Java High-Performance Architecture
Nov 21, 2023 · Information Security

Master Spring Security: Quick Start, JWT Authentication, and RBAC Authorization

This comprehensive guide walks you through setting up Spring Security in a Spring Boot project, configuring password encoding, implementing JWT-based authentication, building custom login and logout endpoints, managing user details with MyBatis Plus, and applying role‑based access control with custom permission handlers, all illustrated with complete code examples.

AuthenticationAuthorizationJWT
0 likes · 40 min read
Master Spring Security: Quick Start, JWT Authentication, and RBAC Authorization
Java Backend Technology
Java Backend Technology
Nov 21, 2023 · Backend Development

How to Inflate Your Java Codebase Without Sacrificing Quality

An irreverent guide shows how to artificially inflate Java code volume by adding unnecessary interfaces, redundant methods, extra configuration fields, event listeners, utility classes, custom exceptions, and classic design patterns, while warning that such practices harm readability and maintainability despite boosting line counts.

Design Patternscode qualityjava
0 likes · 13 min read
How to Inflate Your Java Codebase Without Sacrificing Quality
政采云技术
政采云技术
Nov 21, 2023 · Backend Development

Why Do We Need Thread Pools?

Thread pools are essential for managing concurrent tasks efficiently, reducing resource overhead by reusing threads instead of creating new ones for each task, which is crucial for handling high-volume operations like exporting large datasets to Excel.

Thread Poolsbackend-developmentconcurrency
0 likes · 13 min read
Why Do We Need Thread Pools?
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Nov 20, 2023 · Fundamentals

Prototype Pattern: Definition, UML Diagram, Implementation, Advantages, Disadvantages, and Use Cases

This article explains the Prototype design pattern, covering its definition, UML class diagram, Java implementation with shallow and deep copy examples, advantages and drawbacks, comparisons with Factory Method and Singleton patterns, and practical scenarios where cloning objects provides an efficient alternative to costly object creation.

Design PatternsObject CloningPrototype Pattern
0 likes · 14 min read
Prototype Pattern: Definition, UML Diagram, Implementation, Advantages, Disadvantages, and Use Cases
DeWu Technology
DeWu Technology
Nov 20, 2023 · Backend Development

State Machine Evaluation and Selection for Product Domain

The article analyzes DeWu’s product lifecycle, explains New, Product, and Draft types, introduces state‑machine fundamentals, compares Java enum, Spring, Squirrel, and Cola implementations, benchmarks their throughput (showing Cola vastly faster), and concludes that despite Cola’s performance, Spring StateMachine is chosen for its richer features and seamless Spring integration.

COLASquirrelenum
0 likes · 27 min read
State Machine Evaluation and Selection for Product Domain
Top Architect
Top Architect
Nov 20, 2023 · Backend Development

Using @Async in Spring Boot: Configuration, Best Practices, and Common Pitfalls

This article explains how to enable and configure Spring Boot's @Async annotation, provides code examples for thread‑pool setup and asynchronous service methods, and discusses important caveats such as calling async methods from the same class, transaction incompatibility, blocking issues, and exception handling.

AsyncBackendSpring Boot
0 likes · 12 min read
Using @Async in Spring Boot: Configuration, Best Practices, and Common Pitfalls
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Nov 20, 2023 · Cloud Native

Implementing a Custom Nacos‑like Service Discovery and Configuration Management with Spring Boot

This article explains how to build a Spring Boot‑based service registry that replicates Nacos' core features—service discovery, health‑checking, and dynamic configuration management—by creating server‑side registration APIs, scheduled heartbeat checks, client registration logic, and database‑backed configuration storage.

CloudNativeConfigurationManagementMicroservices
0 likes · 10 min read
Implementing a Custom Nacos‑like Service Discovery and Configuration Management with Spring Boot
Senior Brother's Insights
Senior Brother's Insights
Nov 20, 2023 · Backend Development

Mastering the Chain of Responsibility Pattern for Scalable Product Validation in Java

This article explains the Chain of Responsibility design pattern, shows how to apply it to multi‑step product creation validation and expense‑approval workflows, walks through abstract and concrete handler implementations, dynamic configuration, and client execution with full Java code examples.

Chain of ResponsibilityDesign Patternsbackend-development
0 likes · 20 min read
Mastering the Chain of Responsibility Pattern for Scalable Product Validation in Java
Cognitive Technology Team
Cognitive Technology Team
Nov 19, 2023 · Backend Development

Resolving Task Overlap and Scheduling Issues in Quartz with DisallowConcurrentExecution and Distributed Locks

This article explains why Quartz jobs can overlap when their execution time exceeds the trigger interval, demonstrates how to prevent concurrent execution with the @DisallowConcurrentExecution annotation, discusses distributed lock and idempotency solutions for clusters, and covers thread‑pool limits, exception handling, and a complete Java demo.

DisallowConcurrentExecutionJob SchedulingQuartz
0 likes · 5 min read
Resolving Task Overlap and Scheduling Issues in Quartz with DisallowConcurrentExecution and Distributed Locks
MaGe Linux Operations
MaGe Linux Operations
Nov 19, 2023 · Backend Development

Mastering Redis Sorted Sets: Build High‑Performance Leaderboards with Spring Boot

Redis Sorted Sets, powered by skip lists, provide O(log n) operations for ranking and range queries; this article explains their internal structure, core commands, and demonstrates how to implement a real‑time leaderboard in Spring Boot using Redis, complete with configuration, entity design, and service methods.

Sorted SetSpring Bootbackend-development
0 likes · 10 min read
Mastering Redis Sorted Sets: Build High‑Performance Leaderboards with Spring Boot
Su San Talks Tech
Su San Talks Tech
Nov 19, 2023 · Backend Development

Boost Your Java Productivity: 28 Essential IntelliJ IDEA Tips

Discover 28 practical IntelliJ IDEA tricks—from viewing code history and adjusting memory settings to customizing shortcuts, managing imports, visualizing dependencies, and leveraging plugins—designed to streamline Java development, enhance efficiency, and simplify everyday coding tasks for both beginners and seasoned developers.

Code navigationIDEIntelliJ IDEA
0 likes · 14 min read
Boost Your Java Productivity: 28 Essential IntelliJ IDEA Tips
Java High-Performance Architecture
Java High-Performance Architecture
Nov 19, 2023 · Backend Development

Boost Java Performance with Disruptor: A Hands‑On Guide to High‑Throughput Queues

This article introduces the high‑performance Java library Disruptor, explains its core concepts such as Ring Buffer, Sequence, and Wait Strategy, and provides a step‑by‑step demo with Maven configuration, code examples, and test results to help developers implement fast, lock‑free producer‑consumer queues.

DisruptorMessage QueueProducer Consumer
0 likes · 12 min read
Boost Java Performance with Disruptor: A Hands‑On Guide to High‑Throughput Queues
Selected Java Interview Questions
Selected Java Interview Questions
Nov 18, 2023 · Backend Development

A Comprehensive Guide to Java CompletableFuture: Replacing Future and CountDownLatch with Elegant Asynchronous Patterns

This article explains Java's Future and CompletableFuture APIs, demonstrates how to replace blocking Future.get() and CountDownLatch patterns with CompletableFuture, shows creation methods, result retrieval options, callback chains, exception handling, task composition techniques, and provides best‑practice recommendations for thread‑pool usage.

AsynchronousCompletableFutureFuture
0 likes · 22 min read
A Comprehensive Guide to Java CompletableFuture: Replacing Future and CountDownLatch with Elegant Asynchronous Patterns
Code Ape Tech Column
Code Ape Tech Column
Nov 18, 2023 · Backend Development

Understanding ThreadLocal, ScopedValue, and StructuredTaskScope in Java

This article explains the ThreadLocal mechanism, its memory‑leak pitfalls, introduces the new ScopedValue feature in JDK 20 as a safer alternative, and demonstrates practical Spring and virtual‑thread examples using StructuredTaskScope for modern Java backend concurrency.

ScopedValueStructuredTaskScopeThreadLocal
0 likes · 22 min read
Understanding ThreadLocal, ScopedValue, and StructuredTaskScope in Java
Architect's Guide
Architect's Guide
Nov 18, 2023 · Backend Development

Preventing Coupon Over‑Issuance in High‑Concurrency Scenarios with Java, SQL, and Redis Distributed Locks

This article analyzes a coupon‑claiming race condition that caused stock to become negative under load and presents four solutions—including Java synchronized blocks, SQL conditional updates, Redis SETNX locks, and Redisson client locks—to reliably prevent over‑issuance in backend systems.

Coupondistributed-lockjava
0 likes · 12 min read
Preventing Coupon Over‑Issuance in High‑Concurrency Scenarios with Java, SQL, and Redis Distributed Locks
JD Retail Technology
JD Retail Technology
Nov 17, 2023 · Backend Development

How JaCoCo Can Reveal and Eliminate Zombie Code to Boost Backend Efficiency

By instrumenting Java services with JaCoCo’s agent and analyzing runtime coverage data, teams can identify unused (“zombie”) code, safely remove or deactivate it, and consequently reduce maintenance costs, shorten delivery cycles, and improve overall system performance and developer productivity.

JaCoCobackend optimizationcode coverage
0 likes · 12 min read
How JaCoCo Can Reveal and Eliminate Zombie Code to Boost Backend Efficiency
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Nov 17, 2023 · Fundamentals

Factory Method Pattern: Definition, Structure, Implementation, Advantages, and Use Cases

This article explains the Factory Method design pattern, covering its definition, UML diagram, key participants, the problems it solves compared to the Simple Factory, step‑by‑step Java implementation with code examples, advantages, disadvantages, application scenarios, and differences from the Simple Factory pattern.

Design PatternsFactory MethodObject-Oriented
0 likes · 8 min read
Factory Method Pattern: Definition, Structure, Implementation, Advantages, and Use Cases